French Description Description Titre : Procédé de génération de code pour composant électronique à circuits logiques programmables, composant et système pour la mise en œuvre du procédé Domaine technique [0001] La présente invention se rapporte à un procédé de génération de code de description de configuration de matériel destiné à être chargé sur un composant électronique à circuits logiques programmables configuré pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur, et un système informatique pour la mise en œuvre de ce procédé. Elle s’applique notamment aux composants électroniques à circuits logiques programmables de type à réseau de portes programmables in situ (FPGA, de l’anglais « Field Programmable Gate Array ») configurés pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur. Technique antérieure [0002] Les installations de type SMR (de l’anglais « Small Modular Reactor ») présentent pour leur développement des contraintes spécifiques sur les plans techniques et économiques, se traduisant par des objectifs de miniaturisation, de modularité et de simplification, lesquels se déclinent sur tous les aspects et à tous les niveaux de granularité de la conception. [0003] Certaines fonctionnalités, par exemple de traitement numérique de données, sont ainsi mis en œuvre sur des cartes électroniques embarquant des composants électroniques à circuits logiques programmables, par exemple de type FPGA. Par exemple, certaines fonctions de sûreté développées pour des installations de type SMR conduisent à concevoir des composants électroniques à circuits logiques programmables configurés pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur, tel que par exemple l’eau. [0004] La conception d’un tel composant comprenant la génération de code de description de configuration de matériel destiné à être chargé sur le composant, il existe ainsi un besoin pour un procédé de génération de code pour composant électronique à circuits logiques programmables répondant aux contraintes spécifiques de la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur. Résumé
French Description [0005] La présente divulgation vient améliorer la situation. [0006] Selon un premier aspect, il est proposé un procédé mis en œuvre par ordinateur de génération de code de description de configuration de matériel destiné à être chargé sur un composant électronique à circuits logiques programmables configuré pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur. Le procédé proposé comprend : Déterminer une première fonction ℎ
^(^) d’enthalpie en fonction de la température sur la base d’une formulation ℎ(^, ^) du calcul d’enthalpie de l’élément chimique caloporteur dans le plan pression-température (PT) exprimée pour une valeur de pression d’une fonction ^
^^^(^), dans lequel la fonction ^
^^^(^) exprime une valeur de pression en fonction d’une valeur de température ^ dans un intervalle de températures ^
^ = ^^
^^^, ^
^^^ ^ ; Déterminer une deuxième fonction ℎ
^(^) d’enthalpie en fonction de la température sur la base de la formulation exprimée pour une valeur de pression égale à ^
^^^ (^
) + ^, dans lequel ^^^^ est un paramètre d’amplitude de pression, et ^ est un paramètre de valeur comprise entre 0 et ^^^^ (de sorte que la valeur ^
^^^ (^
) + ^ est comprise entre ^
^^^ (^
) et ^
^^^ (^
) + ^^^^) ; Déterminer une troisième fonction ℎ
^(^) d’enthalpie en fonction de la température sur la base de la formulation exprimée pour une valeur de pression égale à ^
^^^ (^
) + ^^^^ ; Générer un premier code en langage de description matériel d’un premier bloc- opérateur ^^^^_^
^ configuré pour la mise en œuvre du calcul d’une valeur approchée d’une première fonction intermédiaire ^
^(^) en fonction de la température définie par ^
^(^) = +
'(^) +
)(^) "^#$.& &
'("^#$.& "^#$
'("^#$.& ; Générer un deuxième code en langage de description matériel d’un deuxième bloc-opérateur ^^^^_^
^ configuré pour la mise en œuvre du calcul d’une valeur approchée d’une deuxième fonction intermédiaire ^
^(^) en fonction de la ture définie par ^
!(^).(^.+
,-.(^)/&/"^#$) (^).(^.+
,- (^)/"^#$) tempéra
^ (^
) = −
' . "^#$.& − &
'("^#$.& − )(^).(^.+
,-.(^)/&) "^#$
'("^#$.& ; Générer un troisième code en langage de description matériel d’un troisième bloc-opérateur ^^^^_^
^ configuré pour la mise en œuvre du calcul d’une valeur approchée d’une troisième fonction intermédiaire ^
^(^) en fonction de la température définie par ^
! ( ^ ) . ( +,-. ( ^ ) /& ) .(+,- ( ^ ) /"^#$) ^(^) =
. "^#$.&
"^#$
'("^#$.& ; et générer, sur la base des premier, deuxième et troisième codes, un code cible utilisable pour synthétiser un circuit logique programmable configuré pour
French Description déterminer une valeur d’enthalpie ℎ
5 &(^, ^)

en fonction de données d’entrée de température et de pression de l’élément calorifique. [0007] Le procédé proposé permet avantageusement la génération automatisée par ordinateur d’un code de description de configuration de matériel destiné à être chargé sur un composant électronique à circuits logiques programmables configuré pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur, ce qui conduit avantageusement à la production d’un composant électronique à circuits logiques programmables sur la base du code généré. [0008] Les caractéristiques exposées dans les paragraphes suivants peuvent, optionnellement, être mises en œuvre. Elles peuvent être mises en œuvre indépendamment les unes des autres ou en combinaison les unes avec les autres. Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre en outre : Déterminer un domaine d’utilisation de la formulation ℎ(^, ^) dans le plan pression-température (PT), délimité par un intervalle de températures ^
^ =
^^
^^^, ^
^^^ ^ et des frontières déterminées par deux fonctions ^
^^^(^) (pour la frontière basse) et ^
^^^(^) + ^^^^ (pour la frontière haute) définies sur ^
^, où ^^^^ correspond à un paramètre d’amplitude du domaine considéré. On peut ainsi avantageusement déterminer un domaine d’utilisation de la formulation ℎ(^, ^) du calcul d’enthalpie de l’élément chimique caloporteur dans le plan pression- température (PT), le domaine résultant étant délimité par les 4 frontières 6^ = ^
^^^, ^ = ^
^^^, ^ = ^
^^^(^), ^ = ^
^^^(^) + ^^^^7, afin de bénéficier de propriétés de la surface d’enthalpie exprimée sur le domaine déterminé qui conviennent particulièrement bien pour la mise en œuvre du procédé proposé selon un ou plusieurs modes de réalisation. En variante, dans certains modes de réalisation, on peut aussi utiliser un domaine d’utilisation prédéfini, par exemple lorsque l’on sait que la surface d’enthalpie présente les propriétés voulues sur le domaine considéré pour l’application cible. [0009] Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre, en outre : configurer le composant électronique à circuits logiques programmables en utilisant le code cible. Le procédé proposé permet ainsi avantageusement de produire un composant électronique à circuits logiques programmables par configuration de ce composant. [0010] Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre, en outre : Déterminer une valeur du paramètre ^ . Par exemple, dans certains modes de
French Description réalisation, la valeur du paramètre ^ peut être déterminée en minimisant une erreur d’approximation 8
^##9:^ d’une valeur de la fonction ℎ(^, ^) par la valeur ℎ
5 &(^, ^) sur le domaine d’utilisation du plan pression-température (PT). Par exemple, l’erreur
d’approximation 8^##9:^ peut être basée sur : 8 ;; ^ ;; # ; # ;; 9 ; : ; ^ ; = m #a ,^x 0?ℎ 5 &(^, ^) − ℎ
(^, ^
)?4. Dans un ou plusieurs modes de réalisation, l’une au moins parmi la valeur du paramètre ^ et l’erreur d’approximation 8
^##9:^ peut être déterminée par la méthode de Newton. [0011] Dans un ou plusieurs modes de réalisation, la valeur de pression ^
^^^(^) peut être basée sur une valeur de la pression de saturation entre les phases liquide et gazeuse ^
@^A(^) en fonction de la température ^. [0012] Dans un ou plusieurs modes de réalisation, le composant électronique programmable peut être de type à réseau de portes programmables in situ, FPGA. [0013] Dans un ou plusieurs modes de réalisation, l’élément chimique caloporteur est l’eau. [0014] Dans un ou plusieurs modes de réalisation, la génération du code cible peut comprendre : Générer un code en langage de description matériel intégrant une pluralité de bloc-opérateurs comprenant les premier, deuxième et troisième bloc-opérateurs ; et : Synthétiser le code cible sur la base du code. [0015] Selon un autre aspect, un circuit électronique programmable est proposé, qui comprend des circuits logiques programmables configurés en utilisant un code cible généré selon un procédé selon l’un des modes de réalisation proposés dans la présente demande. [0016] Un autre aspect concerne un composant électronique à circuits logiques programmables comprenant des circuits logiques programmables configurés en utilisant un code cible généré selon un procédé selon l’un des modes de réalisation proposés dans la présente demande. [0017] Un autre aspect concerne un programme d’ordinateur, chargeable dans une mémoire associée à un processeur, et comprenant des portions de code pour la mise en œuvre d’un procédé selon l’un des modes de réalisation proposés dans la présente demande lors de l’exécution dudit programme par le processeur.
French Description [0018] Un autre aspect concerne un ensemble de données représentant, par exemple par voie de compression ou d’encodage, un programme d’ordinateur tel que proposé dans la présente demande. [0019] Un autre aspect concerne un support de stockage non-transitoire d’un programme exécutable par ordinateur, comprenant un ensemble de données représentant un ou plusieurs programmes, lesdits un ou plusieurs programmes comprenant des instructions pour, lors de l’exécution desdits un ou plusieurs programmes par un ordinateur comprenant un processeur couplé de manière opérationnelle à une mémoire et à une interface entrées/sorties de communication de données, conduire l’ordinateur à gérer un dispositif selon un procédé selon l’un des modes de réalisation proposés dans la présente demande. [0020] Un autre aspect concerne un support de stockage non-transitoire d’un programme exécutable par ordinateur, comprenant un ensemble de données représentant un ou plusieurs programmes, lesdits un ou plusieurs programmes comprenant des instructions pour, lors de l’exécution desdits un ou plusieurs programmes par un ordinateur comprenant une unité de traitement couplée de manière opérationnelle à des moyens mémoire et à un module d’interface entrées/sorties, conduire l’ordinateur à mettre en œuvre un procédé selon l’un des modes de réalisation proposés dans la présente demande. Brève description des dessins [0021] D'autres particularités et avantages de la présente divulgation apparaîtront dans la description ci-après d'exemples de réalisation non limitatifs, en référence aux dessins annexés, dans lesquels : Fig. 1 [0022] [Fig. 1] est un schéma illustrant un ensemble de valeurs de l’enthalpie (massique) de l’eau (exprimée en kJ/kg) en fonction de la pression (exprimée en MPa) et de la température (exprimée en Kelvin) ; Fig. 2 [0023] [Fig. 2] est un schéma illustrant un domaine de valeurs dans un ensemble de valeurs de l’enthalpie (massique) de l’eau (exprimée en kJ/kg) en fonction de la pression (exprimée en MPa) et de la température (exprimée en Kelvin) ;
French Description Fig. 3 [0024] [Fig. 3] est un schéma illustrant un procédé de détermination d’enthalpie de l’eau selon un ou plusieurs modes de réalisation ; Fig. 4 [0025] [Fig. 4] est un diagramme illustrant un procédé selon un ou plusieurs modes de réalisation ; Fig. 5a [0026] [Fig. 5a] illustre un exemple d’architecture matérielle de circuit logique programmable selon un ou plusieurs modes de réalisation ; Fig. 5b [0027] [Fig. 5b] illustre un exemple d’architecture matérielle de circuit logique programmable selon un ou plusieurs modes de réalisation ; Fig. 6 [0028] [Fig. 6] est un diagramme illustrant un exemple d’architecture d’équipement pour la mise en œuvre du procédé proposé selon un ou plusieurs modes de réalisation. Description des modes de réalisation [0029] Dans la description détaillée ci-après de modes de réalisation de l'invention, de nombreux détails spécifiques sont présentés pour apporter une compréhension plus complète. Néanmoins, l'homme du métier peut se rendre compte que des modes de réalisation peuvent être mis en pratique sans ces détails spécifiques. Dans d'autres cas, des caractéristiques bien connues ne sont pas décrites en détail pour éviter de compliquer inutilement la présente description. [0030] La présente demande fait référence à des fonctions, moteurs, unités, modules, plateformes, et illustrations de diagrammes des méthodes et dispositifs selon un ou plusieurs modes de réalisation. Chacun des fonctions, moteurs, modules, plateformes, unités et diagrammes décrits peut être mis en œuvre sous forme matérielle, logicielle (y compris sous forme de logiciel embarqué («firmware»), ou de «middleware»), microcode, ou toute combinaison de ces derniers. Dans le cas d’une mise en œuvre sous forme logicielle, les fonctions, moteurs, unités, modules et/ou illustrations de diagrammes peuvent être mis en
French Description œuvre par des instructions de programme d’ordinateur ou du code, qui peut être stocké ou transmis sur un support lisible par ordinateur, incluant un support non transitoire, ou un support chargé en mémoire d’un ordinateur générique, spécifique, ou de tout autre appareil ou dispositif programmable de traitement de données pour produire une machine, de telle sorte que les instructions de programme d’ordinateur ou le code exécuté(es) sur l’ordinateur ou l’appareil ou dispositif programmable de traitement de données, constituent des moyens de mise en œuvre de ces fonctions. [0031] Les modes de réalisation d’un support lisible par ordinateur incluent, de manière non exhaustive, des supports de stockage informatique et des supports de communication, y compris tout support facilitant le transfert d’un programme d’ordinateur d’un endroit vers un autre. Par «support(s) de stockage informatique», on entend tout support physique pouvant être accédé par ordinateur. Les exemples de support de stockage informatique incluent, de manière non limitative, les disques ou composants de mémoire flash ou tous autres dispositifs à mémoire flash (par exemple des clés USB, des clés de mémoire, des sticks mémoire, des disques-clés), des CD-ROM ou autres dispositifs de stockage optique de données, des DVD, des dispositifs de stockage de données à disque magnétique ou autres dispositifs de stockage magnétique de données, des composants de mémoire de données, des mémoires RAM, ROM, EEPROM, des cartes mémoires («smart cards»), des mémoires de type SSD («Solid State Drive»), et toute autre forme de support utilisable pour transporter ou stocker ou mémoriser des données ou structures de données qui peuvent être lues par un processeur d’ordinateur. [0032] En outre, diverses formes de support lisible par ordinateur peuvent transmettre ou porter des instructions vers un ordinateur, telles qu’un routeur, une passerelle, un serveur, ou tout équipement de transmission de données, qu’il s’agisse de transmission filaire (par câble coaxial, fibre optique, fils téléphoniques, câble DSL, ou câble Ethernet), sans-fil (par infrarouge, radio, cellulaire, microondes), ou des équipements de transmission virtualisés (routeur virtuel, passerelle virtuelle, extrémité de tunnel virtuel, pare-feu virtuel). Les instructions peuvent, selon les modes de réalisation, comprendre du code de tout langage de programmation informatique ou élément de programme informatique, tel que, sans limitation, les langages assembleur, C, C++, Visual Basic, HyperText Markup Language (HTML), Extensible Markup Language (XML), HyperText Transfer Protocol (HTTP),
French Description Hypertext Preprocessor (PHP), SQL, MySQL, Java, JavaScript, JavaScript Object Notation (JSON), Python, et bash scripting. [0033] De plus, les termes «notamment», «par exemple», «exemple», «typiquement» sont utilisés dans la présente description pour désigner des exemples ou illustrations de modes de réalisation non limitatifs, qui ne correspondent pas nécessairement à des modes de réalisation préférés ou avantageux par rapport à d’autres aspects ou modes de réalisation possibles. [0034] Les termes «couplé de manière opérationnelle», «couplé», «monté», «connecté» et leurs variantes et formes diverses utilisés dans les présentes font référence à des couplages, connexions, montages, qui peuvent être directs ou indirects, et comprennent notamment des connexions entre équipements électroniques ou entre des portions de tels équipements qui permettent des opérations et fonctionnements tels que décrits dans la présente demande. De plus, les termes «connectés» et «couplés» ne sont pas limités à des connections ou des couplages physiques ou mécaniques. Par exemple, un couplage de manière opérationnelle peut inclure une ou plusieurs connexion(s) filaire(s) et/ou une ou plusieurs connexion(s) sans-fil entre deux équipements ou plus qui permettent des liaisons de communication simplex et/ou duplex entre les équipements ou des portions des équipements. Selon un autre exemple, un couplage opérationnel ou une connexion peut inclure un couplage par liaison filaire et/ou sans-fil pour permettre des communications de données entre un serveur du système proposé et un autre équipement du système. [0035] Les procédés et systèmes conviennent particulièrement bien pour des dispositifs accélérateurs matériels de simulateur de calcul d’enthalpie d’un élément chimique caloporteur, ou des dispositifs de commande d’installations nucléaires. Ils peuvent en particulier, mais de manière non limitative, avantageusement être utilisés pour la conception de dispositifs réalisant des traitements numériques de fonctions de sûreté pour des installations de type SMR (de l’anglais « Small Modular Reactor »). [0036] En fonction du mode de réalisation choisi, différents types ou architectures de composant électronique à circuits logiques programmables pourront être envisagés pour la mise en œuvre des procédés proposés. Ainsi, dans un ou plusieurs modes de réalisation, le procédé proposé pourra être mis en œuvre pour générer un code de description de configuration de matériel destiné à un composant de type FPGA. L’homme du métier
French Description comprendra cependant que le procédé proposé n’est pas limité à des mises en œuvre pour des composants de type FPGA, et qu’il peut être avantageusement utilisé pour la configuration de tout circuit logique programmable (en anglais « Programmable Logic Device », ou « PLD ») pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur. [0037] Dans ce qui suit, on considère l’exemple non limitatif de l’eau en tant qu’élément chimique caloporteur. Néanmoins, l’homme du métier pourra se rendre compte que tout élément chimique caloporteur pourra être utilisé pour la mise en œuvre de modes de réalisation du procédé proposé à la place ou en complément de l’eau, dont le calcul d’enthalpie est décrit seulement à titre d’exemple. [0038] Une formulation de référence du calcul d’enthalpie de l’eau (ainsi que d’autres propriétés thermodynamiques de l’eau et de la vapeur) a été proposée en 1967 par l’association internationale IAPWS (de l’anglais « The International Association for the Properties of Water and Steam ») sur un large domaine de définition dans le plan pression- température (PT). [0039] La formulation de référence du calcul d’enthalpie de l’eau proposée en 1967 par l’IAPWS a été remplacée en 1997 par une nouvelle formulation de référence établie sur un large domaine de définition dans le plan pression-température (PT) subdivisé en 5 régions, dont certaines sont divisées en sous-régions. Cette formulation est décrite dans le document « Revised Release on the IAPWS Industrial Formulation 1997 for the Thermodynamic Properties of Water and Steam » publié par l’IAPWS et disponible à l’URL : http ://www.iapws.org/relguide/IF97-Rev.pdf (ci-après le « document IAPWS-IF97 »), pour la version R7-97 publiée en 2012. [0040] Dans ce qui suit, on considère l’exemple non limitatif des formulations générales d’enthalpie fournies dans le document IAPWS-IF97. Néanmoins, l’homme du métier pourra se rendre compte que une ou plusieurs formulations générales d’enthalpie autres que celles définies dans le document IAPWS-IF97, comme par exemple une formulation fournie dans le document IAPWS R6-95 publié en Septembre 2018 et intitulé « Revised Release on the IAPWS Formulation 1995 for the Thermodynamic Properties of Ordinary Water Substance for General and Scientific Use » (disponible à l’URL : http://iapws.org/relguide/IAPWS95-2018.pdf) pourraient être utilisées pour la mise en
French Description œuvre de modes de réalisation du procédé proposé à la place ou en complément d’une formulation fournie dans ce document. [0041] La formulation du document IAPWS-IF97 a été proposée en cherchant un bon compromis entre précision et performance de calcul sur une cible logicielle embarquée, pour des usages industriels, de sorte qu’elle a donné lieu à différentes implémentations logicielles. Néanmoins, si cette formulation semble bien convenir pour une implémentation logicielle pour des usages industriels, elle est inadaptée pour une implémentation efficace sur un circuit logique programmable, par exemple de type FPGA (de l’anglais « Field Programmable Gate Array »). [0042] Cinq différentes régions du plan pression-température (PT) sont définies à la section 2 du document IAPWS-IF97, et des équations de calcul d’enthalpie sont proposées pour les régions 1, 2, 3 et 5 aux sections 5, 6, 7 et 9 du document (la région 4 est définie par la courbe de saturation et la section 8, qui la concerne, décrit les formulations de la pression de saturation en fonction de la température et de la température de saturation en fonction de la pression). Afin de proposer une formulation plus adaptée à une implémentation sur circuit logique programmable, sans pour autant perdre trop de précision de calcul, la présente divulgation propose d’envisager des domaines d’application du plan pression-température (PT) plus restreints que ces 5 régions, adaptés à un cas d’application ciblé, ce qui permet de simplifier avantageusement l’interpolation de la formule de calcul d’enthalpie utilisée. [0043] Il est ainsi proposé, dans un ou plusieurs modes de réalisation, de considérer un domaine de définition (aussi dénommé dans la présente divulgation « domaine d’application ») déterminé en fonction de l’application visée (par exemple dans une logique de conception sur-mesure, adaptée aux circuits logiques programmables, par exemple de type FPGA). Par exemple, le domaine d’application déterminé pour le cas d’usage envisagé peut être un sous-ensemble de la région 1 définie par le document IAPWS-IF97 (ou tout autre région ou union de régions définies par ce document), éventuellement beaucoup plus restreint que la région 1 lorsque le cas d’usage s’y prête, ce qui permet avantageusement d’envisager une implémentation sur un circuit logique programmable tout en respectant des contraintes prédéfinies de précision de calcul d’enthalpie. [0044] La figure 1 montre une surface 1 correspondant aux valeurs de l’enthalpie (massique) de l’eau (exprimée en kJ/kg) en fonction de la pression (exprimée en MPa) et de
French Description la température (exprimée en K) calculées selon la formulation du document IAPWS-IF97 pour les régions 1 et 3 définie dans ce document (on pourra se référer respectivement aux pages 6 à 9 et 29 à 32 de ce document pour les détails de cette formulation) sur un exemple de région pression-température délimitée sur un bord par la courbe de saturation entre les phases liquide et gazeuse de l’eau. Néanmoins, l’homme du métier pourra se rendre compte qu’une ou plusieurs autres formulations de l’enthalpie correspondant à une ou plusieurs autres régions définies dans le document IAPWS-IF97 pourraient être utilisées pour la mise en œuvre de modes de réalisation du procédé proposé à la place ou en complément la formulation correspondant à la région 1, dont l’utilisation est décrite seulement à titre d’exemple. [0045] Dans l’exemple illustré sur la figure, la région pression-température est délimitée pour les valeurs de pression par la courbe de saturation liquide / vapeur 2a et par cette même courbe décalée de ^^^^ MPa (sur l’axe de la pression) 2b. La valeur de ^^^^ dans l’exemple illustré par la figure a été choisie égale à 5. Avantageusement, de nombreuses applications industrielles sont concernées par ce type de région (délimitée par la courbe de saturation liquide / vapeur et par cette même courbe décalée en pression), en ce qu’elle est délimitée par la courbe de saturation entre les phases liquide et gazeuse, du fait que par exemple de nombreuses applications liées à l’énergie tirent parti des propriétés particulières du changement de phase (principe des pompes à chaleur) d’un élément chimique caloporteur, comme par exemple l’eau. [0046] On peut observer sur la Fig. 1, d’une part, que la fonction d’enthalpie ℎ(^, ^) semble plutôt régulière sur la région considérée (mise à part au voisinage du point critique 3 où la fonction se comporte de manière singulière), et d’autre part, qu’elle varie davantage en fonction de la température T que de la pression P sur cette région. [0047] En fonction du mode de réalisation (et notamment du cas d’usage envisagé), on peut déterminer un domaine (dans le plan pression température) d’utilisation de la formulation d’enthalpie choisie. [0048] Dans un ou plusieurs modes de réalisation, ce domaine peut être caractérisé par deux valeurs de températures ^
^^^ et ^
^^^, des valeurs d’une fonction calculant une valeur minimale de pression ^
^^^(^) pour une valeur de température ^ entre ^
^^^ et ^
^^^ et une
French Description amplitude de pression ^^^^. Par exemple, le domaine peut être inclus dans une région du plan pression température, comme par exemple la région illustrée par la figure 1. [0049] Par exemple, dans les modes de réalisation dans lesquels le domaine d’utilisation de la formulation de la fonction d’enthalpie est inclus dans une région du plan pression température, comme par exemple la région illustrée par la figure 1, le domaine de valeurs de pression et de température utilisé pour évaluer la fonction d’enthalpie peut être caractérisé par deux valeurs de températures ^
^^^ et ^
^^^ , des valeurs d’une fonction calculant une valeur minimale de pression pour une valeur de température donnée ^
^^^ (^
) basée sur la fonction de pression de saturation entre les phases liquide et gazeuse ^
@^A(^) en fonction de la température ^, et une amplitude de pression ^^^^. [0050] Par exemple, dans les modes de réalisation dans lesquels le domaine d’utilisation de la formulation de la fonction d’enthalpie est inclus dans une région du plan pression température, comme par exemple la région illustrée par la figure 1, le domaine de valeurs de pression et de température utilisé pour évaluer la fonction d’enthalpie peut être caractérisé par deux valeurs de températures ^
^^^ et ^
^^^, des valeurs de la fonction de la pression de saturation entre les phases liquide et gazeuse ^
@^A(^) en fonction de la température ^, et une amplitude de pression ^^^^. [0051] La figure 2 montre un exemple de domaine d’application 4a inclus dans la région correspondant à la surface 1 de la figure 1. La figure 2 illustre les frontières 5a d’un domaine d’application caractérisé par les valeurs : ^
^^^ = 550 D , ^
^^^ = 620 D , la fonction

de pression ^^^^ = 5 G^H .Une fois le domaine de définition spécifique de l’application visée déterminé, il est possible de déterminer une approximation de la formule de calcul d’enthalpie correspondant à ce domaine de définition. [0052] Dans un ou plusieurs modes de réalisation, l’approximation de la formule de calcul d’enthalpie sur le domaine de définition choisi peut avantageusement être obtenue par interpolation, par exemple bi-dimensionnelle pour tenir compte des variations de température et de pression. Par exemple, une interpolation polynomiale bi-valuée (selon une première variable, puis d’une seconde, dans le cas du calcul d’enthalpie la température et la pression) peut être avantageusement envisagée dans un ou plusieurs modes de réalisation.
French Description [0053] Dans un ou plusieurs modes de réalisation, la mise en œuvre de cette interpolation polynomiale bi-valuée peut comprendre les opérations suivantes : quadriller le domaine de définition à couvrir (dans le cas du calcul d’enthalpie un domaine température-pression), faire une première interpolation polynomiale dans une direction (en fixant l’autre), c’est-à- dire selon une première des deux variables en fixant la deuxième variable, puis faire une seconde interpolation dans l’autre direction, c’est-à-dire selon la deuxième variable en fixant la première variable. [0054] De préférence, afin de garder une formulation relativement simple, la discrétisation et les deux interpolations doivent être d’ordre faible, par exemple choisi inférieur ou égal à deux. L’obtention d’une formulation qui reste assez simple peut avantageusement être utilisée lors de la conception de l’architecture du composant électronique cible, afin d’éviter une trop grande complexité de cette architecture, ce qui pourrait détériorer les performances de traitements numériques du composant. [0055] Du fait des propriétés de régularité de la fonction d’enthalpie ℎ(^, ^) , une interpolation bi-dimensionnelle peut être avantageusement effectuée, par exemple suivant le squelette illustré sur la Figure 3 qui montre une vue de la courbe de la Fig. 1 sur le domaine température-pression de pression de la figure 2, c’est-à-dire caractérisé par les deux valeurs de température ^
^^^ et ^
^^^ , les valeurs de la fonction ^
^^^(^) pour des valeurs de température ^ entre ^
^^^ et ^
^^^ , et l’amplitude de pression ^^^^ (pour les exemples suivants : ^
^^^ = 550 D, ^
^^^ = 620 D, ^
^^^(^) = ^
@^A(^) et ^^^^ = 5 G^H). [0056] Dans un ou plusieurs modes de réalisation, on peut définir trois fonctions à partir de la formule de référence du calcul d’enthalpie choisie ℎ(^, ^) (par exemple celle du document IAPWS-IF97 pour la région 1), pour trois valeurs de pression prédéfinies : ^
^^^(^), ^
^^^(^) + ^ et ^
^^^(^) + ^^^^. [0057] Par exemple, deux fonctions
et ℎ
^(^) peuvent être définies aux bornes du domaine de pression considéré, pour des valeurs de pression ^
^^^(^) et ^
^^^(^) + ^^^^ du domaine. Les valeurs de ces deux fonctions peuvent, par exemple, être calculées par interpolation de la fonction ℎ(^, ^) pour ^ = ^
^^^(^) et ^ = ^
^^^(^) + ^^^^ , respectivement.
French Description [0058] Dans un ou plusieurs modes de réalisation, les fonctions (de calcul d’enthalpie en fonction de la température) ℎ
^ (^
) et ℎ
^ (^
) peuvent être définies en utilisant la formulation d’enthalpie ℎ(^, ^), par exemple sur la base des fonctions ℎ
(^
^^^ (^
), ^
) et ℎ
(^
^^^ (^
) + ^^^^, ^
), respectivement. [0059] Par exemple, dans un ou plusieurs modes de réalisation, on peut considérer les fonctions (de calcul d’enthalpie en fonction de la température) suivantes : ℎ
^ (^
) = ℎ
(^
^^^ (^
), ^
) et ℎ
^ (^
) = ℎ
(^
^^^ (^
) + ^^^^, ^
). [0060] Dans les modes de réalisation dans lesquels les valeurs de pression ^
^^^(^) sont déterminées sur la base de valeurs de pression de saturation entre les phases liquide et gazeuse de l’eau (calculées pour des valeurs de température ^ entre ^
^^^ et ^
^^^ ), par exemple égales à des valeurs de pression de saturation ^
@^A(^), on peut considérer les fonctions (de calcul d’enthalpie en fonction de la température) suivantes : ℎ
^ (^
) = ℎ
(^
@^A(^), ^
) et ℎ
^ (^
) = ℎ
(^
@^A(^) + ^^^^, ^
). [0061] En fonction du mode de réalisation, la valeur de l’amplitude en pression du domaine pression-température utilisé peut être choisie adaptée pour l’application envisagée, comme par exemple égale à 5 MPa, comme illustré sur la Fig. 2. On peut ainsi par exemple considérer les fonctions (de calcul d’enthalpie en fonction de la température) suivantes : ℎ
^ (^
) = ℎ
(^
@^A(^), ^
) et ℎ
^ (^
) = ℎ
(^
@^A (^
) + 5, ^
). [0062] Dans un ou plusieurs modes de réalisation, une troisième fonction de calcul d’enthalpie en fonction de la température ℎ
^ (^
) peut être définie pour une valeur de pression ^
^^^(^) + ^ comprise entre les valeurs ^
^^^(^) et ^
^^^(^) + ^^^^ (donc incluse dans le domaine d’utilisation considéré). Dans un ou plusieurs modes de réalisation, la fonction (de calcul d’enthalpie en fonction de la température) ℎ
^(^) peut être définie en utilisant la formulation d’enthalpie ℎ(^, ^) , par exemple sur la base de la fonction ℎ
(^
^^^ (^
) + ^, ^
). Les valeurs de cette fonction peuvent, par exemple, être calculées par interpolation de la fonction ℎ(^, ^) pour ^ = ^
^^^ (^
) + ^. [0063] Par exemple, dans un ou plusieurs modes de réalisation, la troisième fonction de calcul d’enthalpie en fonction de la température ℎ
^ (^
) peut être définie comme suit : ℎ
^ (^
) = ℎ
(^
^^^ (^
) + ^, ^
).
French Description [0064] Dans les modes de réalisation dans lesquels les valeurs de pression ^
^^^(^) sont déterminées sur la base de valeurs de pression de saturation entre les phases liquide et gazeuse de l’eau (calculées pour des valeurs de température ^ entre ^
^^^ et ^
^^^ ), par exemple égales à des valeurs de pression de saturation ^
@^A(^) , on peut considérer la fonction (de calcul d’enthalpie en fonction de la température) suivante : ℎ
^ (^
) = ℎ(^
@^A(^) + ^, ^). [0065] Ainsi, dans les modes de réalisation dans lesquels les valeurs de pression ^
^^^(^) sont déterminées sur la base de valeurs de pression de saturation entre les phases liquide et gazeuse de l’eau (calculées pour des valeurs de température ^ entre ^
^^^ et ^
^^^ ), par exemple égale à des valeurs de pression de saturation ^
@^A(^), on peut considérer les trois fonctions (de calcul d’enthalpie en fonction de la température) suivantes : ℎ
^(^) = ℎ(^
@^A(^), ^), ℎ
^(^) = ℎ(^
@^A(^) + ^, ^) et ℎ
^(^) = ℎ(^
@^A(^) + ^^^^, ^). [0066] Selon le mode de réalisation, les valeurs peuvent être calculées en utilisant toute formulation générale convenant pour le calcul, telle que, par exemple les formulations de ℎ(^, ^) et ^
@^A(^), fournies par le document IAPWS-IF97 pour les régions 1 et 4. [0067] Dans un ou plusieurs modes de réalisation, on peut ainsi déterminer, sur la base des fonctions de calcul d’enthalpie en fonction de la température ℎ
^ (^
), ℎ
^ (^
) et ℎ
^ (^
) définies, la position d’un point sur chacune de ces courbes correspondant respectivement aux valeurs ℎ
^(^
K), ℎ
^(^
K) et ℎ
^(^
K) pour une valeur de température ^
K donnée. [0068] Dans un ou plusieurs modes de réalisation, on peut déterminer, sur la base des valeurs ℎ
^(^
K), ℎ
^(^
K) et ℎ
^(^
K), la position d’un point ℎ
^L(^
K) sur une courbe passant par les trois points ℎ
^ (^
K ), ℎ
^ (^
K ) et ℎ
^ (^
K ). [0069] En fonction du mode de réalisation, la détermination de la valeur ℎ
^L(^
K) peut comprendre la détermination, par exemple en utilisant toute méthode d’interpolation appropriée, d’un ensemble de valeurs approchées correspondant à une courbe d’approximation de la courbe reliant les trois points ℎ
^ (^
K ), ℎ
^ (^
K ) et ℎ
^ (^
K ) sur la surface d’enthalpie ℎ(^, ^), parmi lesquelles la valeur ℎ
^L(^
K) pour la pression ^
K. On obtient ainsi une valeur approchée de la valeur d’enthalpie ℎ(^
K, ^
K).
French Description [0070] Par exemple, dans un ou plusieurs modes de réalisation, une interpolation Lagrangienne à l’ordre 2 peut être utilisée pour calculer la valeur ℎ
^L(^
K) dans la mesure où l’approximation calculée correspond à la précision souhaitée pour le cas d’usage envisagé. [0071] Dans les modes de réalisation dans lesquels une interpolation Lagrangienne à l’ordre 2 est utilisée, la courbe d’approximation reliant les trois points ℎ
^ (^
K ), ℎ
^ (^
K ) et ℎ
^ (^
K ) sur la surface d’enthalpie ℎ
(^, ^
) peut ainsi correspondre dans certains modes de réalisation à la fonction :
[0075] Dans un ou plusieurs modes de réalisation, les trois fonctions (de la température ^) ^
^ (^
), ^
^ (^
) et ^
^ (^
) peuvent être approximées en utilisant toute méthode d’interpolation appropriée, comme par exemple une interpolation polynômiale d’ordre 1 (si on souhaite économiser en priorité les ressources logiques de la cible matérielle, dans l’implémentation résultante), ou d’ordre 2 (si on souhaite plutôt économiser la mémoire), par morceaux. [0076] Une valeur approchée d’enthalpie ℎ
5 &(^, ^) peut ainsi être calculée pour une pression ^ et une température ^ données. [0077] On décrit ci-après un procédé (10) de génération de code de description de configuration de matériel destiné à être chargé sur un composant électronique à circuits logiques programmables, par exemple de type FPGA, dans un ou plusieurs modes de réalisation. [0078] En référence à la figure 4, on envisage un composant électronique à circuits logiques programmables, par exemple de type FPGA, à configurer pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur, tel que, par exemple, l’eau.
French Description [0079] On envisage ainsi une formulation ℎ(^, ^) du calcul d’enthalpie de l’élément chimique caloporteur dans le plan pression-température (PT), comme par exemple la formulation fournie par le document IAPWS-IF97 pour la région 1 dans le cas de l’eau. [0080] Dans un ou plusieurs modes de réalisation, un domaine d’utilisation dans le plan pression-température (PT) de la formulation ℎ(^, ^) peut être déterminé, par exemple sur la base d’un intervalle de températures ^
^ = ^^
^^^, ^
^^^ ^ , d’une fonction ^
^^^(^) par exemple définie sur ^
^ , et d’un paramètre d’amplitude de pression ^^^^ . Le domaine résultant est alors délimité par les 4 frontières suivantes : 6^ = ^
^^^, ^ = ^
^^^ , ^ = ^
^^^ (^
), ^ = ^
^^^ (^
) + ^^^^
7. [0081] En variante, dans certains modes de réalisation, le domaine d’utilisation dans le plan pression-température (PT) de la formulation ℎ(^, ^) peut être prédéfini. [0082] Dans un ou plusieurs modes de réalisation, une première fonction ℎ
^(^) d’enthalpie en fonction de la température est déterminée (11) sur la base d’une formulation ℎ(^, ^) du calcul d’enthalpie de l’élément chimique caloporteur dans le plan pression- température (PT) exprimée pour une valeur de pression égale à ^
^^^(^), dans lequel la fonction ^
^^^(^) exprime une valeur de pression en fonction d’une valeur de température ^ dans un intervalle de températures ^
^ =
^^
^^^, ^
^^^ ^.
[0083] Dans un ou plusieurs modes de réalisation, une deuxième fonction ℎ
^(^) d’enthalpie en fonction de la température est déterminée (12) sur la base de la formulation exprimée pour une valeur de pression égale à ^
^^^(^) + ^ , dans lequel ^^^^ est un paramètre d’amplitude de pression du domaine d’utilisation, et ^ est un paramètre de valeur comprise entre 0 et ^^^^, de telle sorte que la valeur de pression ^
^^^ (^
) + ^ soit comprise entre ^
^^^ (^
) et ^
^^^ (^
) + ^^^^. [0084] Dans un ou plusieurs modes de réalisation, une troisième fonction ℎ
^(^) d’enthalpie en fonction de la température est déterminée (13) sur la base de la formulation exprimée pour une valeur de pression égale à ^
^^^ (^
) + ^^^^. [0085] Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre la génération (14) d’un premier code en langage de description matériel (par exemple en langage VHDL (de l’anglais « VHSIC Hardware Description Language »)) d’un premier bloc-opérateur ^^^^_^
^ configuré pour la mise en œuvre du calcul d’une valeur approchée
French Description d’une première fonction intermédiaire ^
^(^) en fonction de la température définie par
[0086] Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre en outre la génération (15) d’un deuxième code en langage de description matériel (par exemple en langage VHDL) d’un deuxième bloc-opérateur ^^^^_^
^ configuré pour la mise en œuvre du calcul d’une valeur approchée d’une deuxième fonction intermédiaire ^
^(^) en fonction de la température définie par ^
^ (^
) =
"^#$.& −
[0087] Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre en outre la génération (16) d’un troisième code en langage de description matériel (par exemple en langage VHDL) d’un troisième bloc-opérateur ^^^^_^
^ configuré pour la mise en œuvre du calcul d’une valeur approchée d’une troisième fonction intermédiaire ^
^(^) en fonction de la température définie par ^
^(^) =
"^#$.& +

[0088] En fonction du mode de réalisation choisi, la génération d’un ou plusieurs parmi les premier, deuxième et troisième codes pourra être effectuée en utilisant un ou plusieurs outils de génération automatique de code en langage de description matériel, comme par exemple des outils de génération de code VHDL tels que l’outil décrit dans les articles suivants : Florent de Dinechin and Bogdan Pasca : « Designing custom arithmetic data paths with FloPoCo.”, IEEE Design & Test of Computers, 28(4):18--27, July 2011 et Florent de Dinechin: “Reflections on 10 years of FloPoCo.” in 26th IEEE Symposium of Computer Arithmetic (ARITH-26), June 2019. [0089] Dans un ou plusieurs modes de réalisation, les premier, deuxième et troisième codes ainsi générés pourront être utilisés pour, par exemple après intégration, synthétiser un cricuit FPGA. [0090] Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre en outre la génération (17), sur la base des premier, deuxième et troisième codes, d’un code cible utilisable pour synthétiser un circuit logique programmable configuré pour déterminer
French Description une valeur d’enthalpie ℎ
5 &(^, ^) =
en fonction de données d’entrée de température et de pression de l’élément calorifique. [0091] En fonction du mode de réalisation, la synthèse du circuit logique programmable pourra être effectuée en utilisant un ou plusieurs outils de synthèse de circuit logique programmable. [0092] La figure 5a illustre un exemple d’architecture fonctionnelle (21) de circuit logique programmable selon un ou plusieurs modes de réalisation. [0093] La figure 5a illustre un exemple de schéma de câblage de blocs de calcul, parmi lesquels les blocs ^
^(^), ^
^(^) et ^
^(^) pour lesquels des codes logiciels peuvent être générés selon un ou plusieurs modes de réalisation du procédé proposé. [0094] Cet exemple d’architecture permet de mettre en œuvre le calcul d’enthalpie ℎ
5 &(^, ^) = ^
^ (^
). ^
^ + ^
^ (^
). ^ + ^
^ (^
) décrit plus haut dans le cadre de modes de réalisation du procédé proposé, et se prête particulièrement bien à une mise en œuvre sur un circuit logique programmable, ce qui permet avantageusement de produire un composant électronique à circuits logiques programmables, par exemple de type FPGA, configuré pour la mise en œuvre d’un calcul d’enthalpie de l’eau sur un domaine pression-température d’intérêt. [0095] En référence à l’exemple illustré sur la figure 5a, l’architecture comprend une interface (22) d’entrée de données de température (T), par exemple obtenues par un capteur de température auquel l’interface (22) d’entrée de données de température est couplée de manière opérationnelle. L’interface (22) d’entrée de données de température est couplée de manière opérationnelle aux trois blocs ^
^(^), ^
^(^) et ^
^(^) (24a, 24b et 24c) de manière à fournir en entrée de chacun de ces blocs (24a, 24b et 24c) des données d’entrée de température. L’architecture illustrée comprend en outre une interface (23) d’entrée de données de pression (P), par exemple obtenues par un capteur de pression auquel l’interface (23) d’entrée de données de pression est couplée de manière opérationnelle. L’interface d’entrée (23) de données de pression est couplée de manière opérationnelle à un bloc (26) d’opération élévation au carré et à un premier bloc (25a) d’opération produit. Ce premier bloc (25a) d’opération produit est en outre couplé en entrée de manière opérationnelle à la sortie du bloc ^
^(^) (24b) afin de mettre en œuvre le produit ^
^(^). ^ du calcul d’enthalpie.
French Description La sortie du bloc (26) d’opération élévation au carré est couplée en entrée d’un deuxième bloc (25b) d’opération produit qui est en outre couplé en entrée de manière opérationnelle à la sortie du bloc ^
^(^) (24c) afin de mettre en œuvre le produit ^
^(^). ^
^ du calcul d’enthalpie. Les sorties des blocs ^
^ (^
) (24a), et d’opération produit (25a) et (25b) sont couplées en entrée de manière opérationnelle à un bloc (27) d’opération somme, pour mettre en œuvre la somme ^
^(^). ^
^ + ^
^(^). ^ + ^
^(^) du calcul d’enthalpie. La sortie du bloc (27) d’opération somme est couplée de manière opérationnelle avec une interface sortie de l’architecture (21) configurée pour délivrer la valeur d’enthalpie calculée ℎ
5 &(^, ^). [0096] L’homme du métier comprendra que la présente divulgation n’est pas limitée à une architecture particulière de circuit logique programmable, et que toute architecture convenant pour la mise en œuvre du procédé proposé selon un ou plusieurs modes de réalisation, utilisant éventuellement d’autres blocs d’opération, comme par exemple toute architecture convenant pour la mise en œuvre d’un calcul de valeur d’enthalpie ℎ
5 &(^, ^) = ^
^ (^
). ^
^ + ^
^ (^
). ^ + ^
^ (^
), pourrait être utilisée à la place de l’architecture (21) de la figure 5a, qui n’est décrite qu’à titre d’exemple illustratif. [0097] Ainsi, dans un ou plusieurs modes de réalisation, on pourra configurer le composant électronique à circuits logiques programmables en utilisant le code cible, par exemple par synthèse de circuit logique programmable utilisant le code cible. [0098] Par exemple, dans un ou plusieurs modes de réalisation, la génération du code cible pourra comprendre la génération d’un code en langage de description matériel intégrant une pluralité de bloc-opérateurs comprenant les premier, deuxième et troisième bloc-opérateurs, et la synthèse du code cible sur la base du code. [0099] Dans un ou plusieurs modes de réalisation, le procédé conduisant au calcul de la valeur d’enthalpie ℎ
5 &(^, ^) = ^
^(^). ^
^ + ^
^(^). ^ + ^
^(^) peut être appliqué à une pluralité de régions définies dans le document de l’IAPWS-IF97, comme par exemple pour la région 1 (comme décrit ci-dessus) pour la phase liquide de l’eau, et pour la région 2 pour la phase vapeur, sous la courbe de saturation. [0100] Dans un ou plusieurs modes de réalisation, pour des applications utilisant un domaine concernant ces deux phases (et par conséquent ces deux régions), on peut
French Description déterminer un premier bloc logique de calcul d’enthalpie ℎ
$^Q en phase liquide et un deuxième bloc logique de calcul d’enthalpie en phase vapeur ℎ
R^#. [0101] La figure 5b illustre un exemple d’architecture fonctionnelle (31) de circuit logique programmable selon un ou plusieurs modes de réalisation, qui correspond à ce cas de figure. [0102] L’architecture (31) comprend un bloc (21) de calcul d’enthalpie ℎ
$^Q en phase liquide et un bloc (32) de calcul d’enthalpie en phase vapeur ℎ
R^#. Par exemple, le bloc (21) de calcul d’enthalpie ℎ
$^Q en phase liquide peut avoir l’architecture illustrés sur la figure 5a, et le bloc (32) de calcul d’enthalpie en phase vapeur ℎ
R^# peut avoir substantiellement la même architecture que celle illustré sur la figure 5a, avec cependant des blocs ^
^ S (^), ^
^ S (^) et ^
^ S (^) différents des blocs ^
^(^), ^
^(^) et ^
^(^) car déterminés à partir de la formule de l’enthalpie dans le domaine vapeur. [0103] Comme illustré sur la figure 5b, on pourra par ailleurs prévoir un bloc (34) de calcul de ^
@^A(^), ainsi qu’un bloc (35) d’opération de comparaison pour effectuer le test ^ >? ^
@^A(^) sur la valeur de pression d’entrée ^. L’architecture (31) pourra être configurée pour, dans les cas où il est déterminé que la pression d’entrée ^ est supérieure à ^
@^A(^), commander un bloc multiplexeur (33) pour délivrer sur une interface de sortie (36) la valeur d’enthalpie calculée par le bloc (21) de calcul d’enthalpie ℎ
$^Q en phase liquide, et dans les cas où il est déterminé que la pression d’entrée ^ n’est pas supérieure à ^
@^A(^), commander le bloc multiplexeur (33) pour délivrer sur l’interface de sortie (36) la valeur d’enthalpie calculée par le bloc (32) de calcul d’enthalpie ℎ
R^# en phase vapeur. Dans un ou plusieurs modes de réalisation, la valeur ^
@^A(^) pourra être calculée à partir d’une fonction ^
@^A approximée à l’aide d’une méthode d’interpolation, comme par exemple une interpolation polynomiale par morceaux. [0104] Dans un ou plusieurs modes de réalisation, le procédé proposé pourra en outre comprendre la détermination d’une valeur du paramètre ^. [0105] Par exemple, dans un ou plusieurs modes de réalisation, la valeur du paramètre ^ pourra être déterminée en minimisant une erreur d’approximation 8
^##9:^ de la fonction ℎ(^, ^) par la fonction ℎ
5 &(^, ^) sur le domaine d’utilisation du plan pression-température (PT).
French Description [0106] Par exemple, dans un ou plusieurs modes de réalisation, l’erreur d’approximation
8^##9:^ pourra être choisie basée sur qui conduira par exemple à minimiser
calculer une valeur du paramètre ^. [0107] En fonction du mode de réalisation, toute méthode d’optimisation convenant pour la minimisation de l’erreur d’approximation pourra être utilisée. On pourra par exemple déterminer l’une au moins parmi la valeur du paramètre ^ et l’erreur d’approximation
la méthode de Newton ou par la méthode des multiplicateurs de Lagrange. [0108] Dans un ou plusieurs modes de réalisation, pour déterminer le domaine d’application de la formule de calcul de l’enthalpie utilisée, la fonction ^
^^^ (^
) pourra être déterminée basée sur (par exemple égale à) la fonction exprimant la pression de saturation entre les phases liquide et gazeuse ^
@^A(^) en fonction de la température ^. [0109] La figure 6 illustre un exemple d’architecture d’équipement pour la mise en œuvre du procédé proposé selon un ou plusieurs modes de réalisation. [0110] En référence à la figure 6, le dispositif 100 comprend un contrôleur 101, couplé de manière opérationnelle à une mémoire 102, qui pilote un module 103 de génération de code de description de configuration de matériel (par exemple de code de description de configuration de matériel destiné à être chargé sur un composant électronique à circuits logiques programmables configuré pour la mise en œuvre d’un calcul d’enthalpie d’un élément chimique caloporteur). [0111] Le contrôleur 101 est configuré pour piloter le module de génération de code 102 pour la mise en œuvre d’un ou de plusieurs modes de réalisation du procédé proposé. [0112] Le module de génération de code 103 est configuré pour la mise en œuvre du procédé proposé par le dispositif 100. En particulier, le module de génération de code 103 peut être configuré pour remplir les fonctions et accomplir les actes décrits dans la présente description pour la mise en œuvre du procédé proposé par ordinateur. [0113] Le dispositif 100 peut être un ordinateur, un réseau d’ordinateurs, un composant électronique, ou un autre appareil comportant un processeur couplé de manière opérationnelle à une mémoire, ainsi que, selon le mode de réalisation choisi, une unité de
French Description stockage de données, et d'autres éléments matériels associés comme une interface de réseau et un lecteur de support pour lire un support de stockage amovible et écrire sur un tel support (non représentés sur la figure). Le support de stockage amovible peut être, par exemple, un disque compact (CD), un disque vidéo/polyvalent numérique (DVD), un disque flash, une clé USB, une mémoire SSD, etc. En fonction du mode de réalisation, la mémoire, l’unité de stockage de données ou le support de stockage amovible contient des instructions qui, lorsqu'elles sont exécutées par le contrôleur 101, amènent ce contrôleur 101 à effectuer ou contrôler les parties module de génération de code 103 des exemples de mise en œuvre du procédé proposé décrits dans la présente description. Le contrôleur 101 peut être un composant implémentant un processeur ou une unité de calcul pour la gestion de communications selon le procédé proposé et le contrôle de l’unité 103 du dispositif 100. [0114] Le dispositif 100 peut être mis en œuvre sous forme logicielle, sous forme matérielle, comme un circuit intégré spécifique application (ASIC), ou sous forme d'une combinaison d'éléments matériels et logiciels). De même, le module de génération de code 102 peut être mis en œuvre sous forme logicielle, sous forme matérielle, comme un ASIC, ou sous forme d'une combinaison d'éléments matériels et logiciels. [0115] Dans un ou plusieurs modes de réalisation, le procédé proposé peut comprendre une ou plusieurs des opérations suivantes, ce qui fournit avantageusement une procédure automatisable pour construire une architecture de calcul d’enthalpie de l’eau pouvant être mise en œuvre sur un composant de type FPGA : [0116] Calculer le paramètre ^ ainsi que l’erreur d’approximation
; 8
; ^ ;; # ; # ;; 9 ; : ; ^ ;, par exemple par la méthode de Newton (approximation d’une racine d’une fonction réelle). [0117] Générer le code VHDL de chaque opérateur, par exemple à l’aide d’un outil de génération automatique de code VHDL. [0118] Intégrer les blocs selon un schéma de câblage, tel que le schéma illustré sur la Figure 5a. [0119] Synthétiser le circuit FPGA, par exemple à l’aide d’un outil de synthèse de circuit FPGA. [0120] Dans un ou plusieurs modes de réalisation, on peut ainsi produire un circuit logique programmable, comme par exemple un composant FPGA, en le configurant selon un ou
French Description plusieurs modes de réalisation du procédé proposé. Ce circuit logique peut ensuite être inséré dans un circuit électronique, par exemple pour être couplé de manière opérationnelle avec un capteur de pression et un capteur de température, afin de recevoir en entrée des données de pression et de température, sur la base desquelles il aura été configuré pour calculer une valeur d’enthalpie avec une précision correspondant au cas d’usage envisagé. [0121] En fonction du mode de réalisation choisi, certains actes, actions, évènements ou fonctions de chacune des méthodes décrites dans le présent document peuvent être effectués ou se produire selon un ordre différent de celui dans lequel ils ont été décrits, ou peuvent être ajoutés, fusionnés ou bien ne pas être effectués ou ne pas se produire, selon le cas. En outre, dans certains modes de réalisation, certains actes, actions ou évènements sont effectués ou se produisent concurremment et non pas successivement. [0122] Bien que décrits à travers un certain nombre d’exemples de réalisation détaillés, le procédé proposé et le dispositif pour la mise en œuvre d’un mode de réalisation du procédé comprennent différentes variantes, modifications et perfectionnements qui apparaîtront de façon évidente à l’homme de l’art, étant entendu que ces différentes variantes, modifications et perfectionnements font partie de la portée de l’invention, telle que définie par les revendications qui suivent. De plus, différents aspects et caractéristiques décrits ci-dessus peuvent être mis en œuvre ensemble, ou séparément, ou bien substitués les uns aux autres, et l’ensemble des différentes combinaisons et sous-combinaisons des aspects et caractéristiques font partie de la portée de l’invention. En outre, il se peut que certains systèmes et équipements décrits ci-dessus n’incorporent pas la totalité des modules et fonctions décrits pour les modes de réalisation préférés.