Brevet FR3099262A1 — publié le 20210129

Description Titre de l'invention : Système de traitement graphique de données [0001] La présente invention concerne les systèmes de traitement graphique de données et plus particulièrement les systèmes monocceur et multicceur pour interface graphique. [0002] Elle se rapporte à une interface homme-machine utilisant un tel système de traitement. [0003] Une application particulièrement intéressante de l'invention concerne les systèmes de traitement de données pour interfaces homme-machine embarquées à bord d'aéronefs. [0004] Ainsi, dans ce domaine, les systèmes de traitement de données sont classiquement utilisés pour exécuter des calculs graphiques et créer des contenus graphiques destinés à être affichés sur un écran de l'interface. Il peut en particulier s'agir de créer des contenus graphiques comportant des zones tactiles manipulables manuellement, en l'espèce par un pilote, pour l'exécution de fonctions prédéfinies. [0005] Pour la réalisation de calculs graphiques, on utilise, de manière générale, au moins un processeur de calculs graphiques (GPU, pour « Graphic Processing Unit ») coopérant avec au moins une unité centrale de traitement CPU (pour « Central Processing Unit » en anglais). [0006] Les architectures GPU sont des architectures de calcul exécutant un jeu d'instructions tels que des calculs bidimensionnels ou tridimensionnels permettant de construire une image. [0007] Les GPU peuvent être composés (l'un coeur unique ou de multiples coeurs de calcul qui se répartissent les tâches graphiques. Il s'agit d'architectures de traitement partiellement ou entièrement parallèles. [0008] En ce qui concerne les systèmes de traitement de données destinés à être embarqués à bord d'aéronefs, comme on le conçoit, ce type de système électronique est soumis à des contraintes sévères de maîtrise du matériel employé et de déterminisme, qui impose de déterminer de manière certaine le fonctionnement du système, par exemple en ce qui concerne la durée de transfert de données. Ils nécessitent une validation et une certification par les autorités compétentes. [0009] Les systèmes de traitement de données pour les interfaces homme-machine embarqués pour avions commerciaux doivent ainsi satisfaire un certain nombre de règles et de recommandations de développement. [0010] Dans l'état de la technique, les systèmes de calcul embarqués sont généralement réalisés à partir de composants pris sur étagère ou « COTS » (pour « Commercial Off The Shelf »), c'est-à-dire de composants fabriqués en grande série pour réduire les coûts de fabrication et de maintenance. [0011] Généralement, les composants constituant la chaîne de traitement pour les interfaces 2 homme-machine sont groupés dans une unique zone par exemple un coeur physique. [0012] On entend par « chaîne de traitement », une série de modules configurés sur ces composants et comprenant au moins une application graphique, communément appelée « User Application » en anglais, ci-après UA, générant des instructions pour l'exécution de fonctions graphiques prédéfinics aidant au pilotage des aéronefs. [0013] La chaîne de traitement comprend également au moins une unité de calcul graphique GPU et optionnellement un système d'affichage dans un poste de pilotage (CDS « Cockpit Display System » selon le vocable anglosaxon), ci-après CDS s'il n'y a pas de norme à respecter. [0014] Enfin, la chaîne de traitement est délimitée par au moins un dispositif périphérique relié à un ou à plusieurs écrans d'affichage par exemple des écrans LCD. [0015] Compte tenu du temps de développement et de la durée de vie d'un produit pour l'aéronautique, qui peut atteindre plusieurs dizaines d'années, il est courant que les composants utilisés lors de la conception de la chaîne de traitement soient en fait obsolètes même avant la fin du processus de conception, obligeant à réaliser des phases de modification et de recertification périodique. [0016] Autrement dit, le remplacement d'un de ces composants par de nouveaux composants différents conduit à recertifier tous les composants de la chaîne de traitement pour vérifier qu'il n'y ait pas de perturbations, ce qui peut être lent et coûteux. [0017] En outre, les besoins relatifs à la composition de la chaîne de traitement diffèrent selon les industriels, obligeant le fournisseur à reconfigurer lesdits modules modifiant également leur emplacement, ce qui peut nécessiter des certifications à chaque nouvelle configuration. [0018] Au vu de ce qui précède, l'invention se propose de pallier aux contraintes précitées dans un système de traitement graphique de données. [0019] L'invention a donc pour objet, selon un premier aspect, un système de traitement graphique de données, comprenant un au moins un coeur de traitement graphique de données comportant des moyens de mise en forme aptes à interpréter sous forme graphique ou sous forme d'instructions les données échangées via une interface homme-machine, et dans lequel lesdits moyens de mise en forme sont répartis sur un ou plusieurs coeurs. [0020] Par « interprétation » on entend la possibilité de lire des données sous forme graphique ou sous forme d'un langage informatique, et d'exécuter les actions demandées ou nécessaires suite à cette lecture. [0021] On peut citer par exemple le fait pour un pilote d'appuyer sur un bouton tactile affiché sur son écran conduisant par exemple à l'enclenchement d'un évènement et donc à l'exécution d'une fonction. 3 [0022] Les moyens de mise en forme ont ainsi interprété des données sous forme graphique. [0023] En outre, étant donné qu'appuyer sur un bouton tactile peut supposer que celui-ci change de forme graphique, des données sous forme d'instructions seront, dans ce cas, envoyées aux moyens de mise en forme pour modifier ladite forme du bouton. [0024] Ces moyens de mise en forme sont ici répartis sur un ou plusieurs coeurs. Autrement dit, chaque coeur physique est entièrement ou partiellement partitionné et peut comporter une partie des moyens de mise en forme ou tout l'ensemble. [0025] Cela permet de réaliser une certification incrémentale. [0026] Il est donc possible de mettre à jour une partie des moyens de mise en forme contenue dans un coeur physique sans devoir rccertifier les autres parties des moyens de mise en forme accessibles via les autres coeurs physiques ou contenus dans le même coeur. [0027] Avantageusement, les moyens de mise en forme comprennent des moyens de conversion aptes à convertir les données échangées via l'interface homme-machine, soit sous la forme graphique, soit sous la forme d'instructions, au moins un module de traitement apte à générer les instructions, et des moyens d'affichage aptes à afficher lesdites données sous forme graphique. [0028] Ledit au moins un module de traitement est couplé aux moyens de conversion, eux- mêmes couplés auxdits moyens d'affichage. [0029] On entend par « module de traitement » tout module UA apte à recevoir des données de capteurs par exemple et à générer des instructions pour représenter graphiquement lesdites données reçues. [0030] Ces instructions sont envoyées auxdits moyens de conversion. Le module de traitement est aussi apte à recevoir des données suite à une interaction homme-machine, par exemple un appui sur un bouton, puis à envoyer des données sous forme d'instructions graphiques aux moyens de conversion pour éventuellement modifier le rendu du bouton. [0031] Les moyens de conversion permettent, une fois les instructions graphiques reçues par le module UA, d'assurer des fonctions de calcul de l'affichage à projeter sur un écran par exemple LCD. [0032] Cette projection est rendue possible grâce à des moyens d'affichage sous forme de périphériques couplés à un ou à un plusieurs écrans d'affichage [0033] De préférence, les moyens de conversion comprennent au moins un module de mise en conformité apte à conformer les données à une norme de communication et d'affichage aéronautique ou automobile, et au moins une unité de calcul graphique apte à recevoir les données résultant de la mise en oeuvre dudit au moins un module de mise en conformité et à les convertir en données aptes à être affichées par les moyens d'affichage. [0034] Ledit au moins un module de mise en conformité est de type CDS. Plus particu- lièrement, les données reçues par ledit au moins un module de traitement, sont rendus conforme à une norme telle que « ARINC 661 Part 1 » ou « ARINC 661 Part 2 ». [0035] Par la suite, ces données conformes seront envoyées à au moins une unité de calcul graphique GPU apte à exécuter des fonctions de calcul pour permettre auxdites données d'être affichées sous forme graphique. [0036] Bien sûr, les données peuvent être réparties entre plusieurs unités de calcul graphique aptes à fonctionner partiellement ou entièrement en parallèle. [0037] Alternativement, les moyens de conversion comprennent au moins une unité de calcul graphique apte à recevoir les données résultant de la mise en oeuvre dudit au moins un module de traitement et à les convertir en données aptes à être affichées par les moyens d'affichage. [0038] En d'autres termes, les moyens de conversion sont ici optionnels. Par exemple, dans le cas où il n'y a pas de norme à respecter, le module de traitement UA peut envoyer une valeur d'altitude à afficher qui ne nécessite généralement pas de mise en conformité avec un standard quelconque. [0039] Avantageusement, la répartition des moyens de mise en forme est configurable. [0040] Ainsi, l'architecture comprenant les moyens de mise en forme est entièrement modulaire. Autrement dit, on peut avoir par exemple, un module de traitement UA par coeur physique. [0041] Cette configuration est particulièrement avantageuse étant donné que la mise à jour d'un module de traitement UA n'entraîne pas la mise à jour et la recertification des autres modules de traitement UA. [0042] Ceci est également le cas pour le module CDS et l'unité de calcul graphique GPU. [0043] 11 est à noter qu'on peut également avoir un ensemble de modules de traitement UA et/ou de modules CDS et/ou d'unités de calcul graphique par coeur physique. [0044] On peut aussi choisir une autre configuration à tout moment. Par exemple, on peut choisir de répartir un ou plusieurs modules CDS sur plusieurs coeurs physiques ou les grouper dans un seul coeur physique. [0045] Chaque unité de calcul graphique GPU est ainsi apte d'adresser ou un plusieurs écrans d'affichage. [0046] De préférence, les moyens de mise en forme sont raccordés entre eux au moyen d'au moins un système de communication apte à autoriser les échanges de données entre lesdits moyens de mise en forme. [0047] Le système de communication peut être un bus commun entre les moyens de mise en forme. [0048] L'invention a encore pour objet une interface graphique pour cockpit d'aéronef comprenant un système de traitement graphique de données tel que défini ci-dessus. [0049] D'autres buts, caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante, donnée uniquement à titre d'exemple non limitatif, et faite en référence aux dessins annexés sur lesquels : [0050] [fig.1] illustre un exemple de l'architecture générale d'un système de traitement de données conventionnel réalisé à partir de composants COTS ; [0051] [fig.2A] [0052] [fig.2B] [0053] [fig.2C] [0054] [fig.2D] [0055] [fig.2E] représentent différentes configurations alternatives et exemplatives des moyens de mise en forme selon l'invention. [0056] On a représenté sur la figure 1 l'architecture générale d'un système de traitement graphique de données selon l'invention, d'une interface homme-machine, désignée sous la référence numérique générale 1. [0057] L'architecture générale 1 est ici multicoeur. Elle peut évidemment être monocoeur. [0058] Elle comprend, dans cet exemple de mode de réalisation, un ensemble de coeurs physiques de traitement de données Cl -C4, ici au nombre de quatre, reliés entre eux par un système de communication Bl, ici un bus de communication partagé apte à autoriser les échanges de données entre lesdits coeurs physiques Cl à C4. [0059] Chaque coeur physique de traitement est apte à fonctionner complètement ou par- tiellement en parallèle permettant de traiter des informations de manière simultanée dans le but de réaliser le plus grand nombre d'opérations en un temps plus court. [0060] Comme on le voit sur la figure, chaque coeur de traitement Cl-C4 comprend des moyens de mise en forme 2 aptes à interpréter sous forme graphique ou sous forme d'instructions les données échangées via une interface homme-machine non représentée ici. [0061] Autrement dit, les moyens de mise en forme 2 sont aptes à lire des données sous forme graphique ou sous la forme d'un langage informatique, et d'exécuter les actions demandées ou nécessaires suite à cette lecture. [0062] Le langage informatique peut être par exemple le langage de programmation C ou C++. [0063] Les moyens de mise en forme 2 comportent une zone mémoire partitionnée en un ensemble de zones mémoires ZM aptes à stocker des programmes participant à l'interprétation sous forme graphique ou sous forme d'instructions les données échangés via l'interface homme-machine. [0064] Chaque programme stocké dans une zone mémoire ZM peut communiquer avec un autre programme stocké dans une autre zone mémoire ZM à l'intérieur du même coeur Cl-C4. 6 [0065] Ccttc communication peut être réalisée par exemple via un bus de communication B2 apte à transférer les données résultant desdits programmes. [0066] Ccttc architecture multicoeur de traitement graphique des données peut être en- tièrement ou partiellement partitionnéc. [0067] Cela permet de réaliser une certification incrémentale. [0068] Il est donc possible de mettre à jour une partie des moyens de mise en forme 2 contenue dans un coeur physique sans devoir rccertifier les autres parties des moyens de mise en forme 2 accessibles via les autres coeurs physiques ou contenus dans le même coeur physique. [0069] Autrement dit, dans une architecture partitionnée, une modification d'un module UA ou CDS ou GPU contenu dans une partition, permet d'éviter de reccrtificr les autres modules contenus dans d'autres partitions. [0070] Cc partitionnement est également modulaire, ce qui permet d'avoir plusieurs confi- gurations alternatives possibles des moyens de mise en forme 2, dont certaines sont représentées sur les figures 2A à 2E. [0071] Les moyens de mise en forme 2 comprennent au moins trois types de modules, illustrés dans la figure 2A, c'est-à-dire, UA, des moyens d'affichage EC sous la forme de périphériques, GPU et/ou CDS ici sous la dénomination PL. [0072] Ces modules sont configurables et partitionnés dans les coeurs Cl-C4. [0073] Sur la figure 2A est illustré un premier exemple de configuration. Ici, un unique module de traitement UA est couplé à un unique module de conversion PL, lui-même couplé à un unique périphérique d'affichage, et cela dans le même coeur Cl. [0074] Cette configuration est reproduite dans les trois autres coeurs C2, C3 et C4. [0075] Ainsi, si un de ces modules UA devait être modifié, les autres modules de traitement UA opérationnels ne seront pas mis à jour et/ou recertifiés. [0076] On peut également avoir, comme illustré dans la figure 2B, un unique module de traitement UA stocké dans le coeur Cl, couplé à un premier module de conversion PLI stocké dans le coeur C3, et couplé à un deuxième et à un troisième module de conversion respectivement PL2, PL3, stockés dans le coeur C2. [0077] Une autre configuration possible, représentée dans la figure 2C, serait de stocker un premier et un deuxième module de traitement UA1, UA2 dans le coeur C4 et les coupler à un module de conversion PL stocké dans le même coeur C4. [0078] Le module de conversion PL peut être également couplé à un troisième module de traitement UA3 stocké dans le coeur C3, et à trois moyens d'affichage ECI, EC2 et EC3 qui sont, comme illustré dans la figure 2D, dans le coeur C4. [0079] Une autre alternative serait de stocker le premier, le deuxième et le troisième module de conversion PLI, PL2 et PL3, et les moyens d'affichage EC dans le même coeur C4 comme représenté sur la figure 2E. 7 [0080] Bien évidemment, ces configurations sont données à titre d'exemples non limitatifs. [0081] Ainsi, le partitionnetnent modulaire des coeurs physiques Cl à C4 permet de modifier la configuration des moyens de mise en forme 2 selon les besoins du système tout en réduisant le nombre de modules à mettre à jour et/ou à recertifier si l'un d'eux devait être modifié. 8 [Revendication 1] [Revendication 2] [Revendication 3] [Revendication 4] [Revendication 5] [Revendication 6] [Revendication 7] REVENDICATIONSSystème dc traitement graphique de données (I), comprenant au moins un coeur (Cl -C4) dc traitement graphique de données comportant des moyens de mise en forme (2) aptes à interpréter sous forme graphique ou sous forme d'instructions les données échangées via une interface homme-machine, caractérisé en ce que lesdits moyens de mise en forme (2) sont répartis sur un ou plusieurs coeurs (Cl-C4). Système selon la revendication 1, dans lequel les moyens de mise en forme (2) comprennent des moyens de conversion (PL) aptes à convertir les données échangées via l'interface homme-machine soit sous la forme graphique, soit sous la forme d'instructions, au moins un module de traitement (UA) apte à générer les instructions, et des moyens d'affichage (EC) aptes à afficher lesdites données sous forme graphique, ledit au moins un module de traitement (UA) étant couplé aux moyens de conversion (PL), eux-mêmes couplés auxdits moyens d'affichage (EC). Système selon la revendication 2, dans lequel les moyens de conversion (PL) comprennent au moins un module de mise en conformité (CDS) apte à conformer les données à une norme de communication et d'affichage aéronautique ou automobile, et au moins une unité de calcul graphique (GPU) apte à recevoir les données résultant de la mise en oeuvre dudit au moins un module de mise en conformité (CDS) et à les convertir en données aptes à être affichées par les moyens d'affichage (EC). Système selon la revendication 2, dans lequel les moyens de conversion (PL) comprennent au moins une unité de calcul graphique (GPU) apte à recevoir les données résultant de la mise en oeuvre dudit au moins un module de traitement (UA) et à les convertir en données aptes à être affichées par les moyens d'affichage (EC). Système selon l'une quelconque des revendications précédentes, dans lequel la répartition des moyens de mise en forme (2) est configurable. Système selon l'une quelconque des revendications précédentes, dans lequel les moyens de mise en forme (2) sont raccordées entre eux au moyen d'au moins un système de communication (B1, B2) apte à autoriser les échanges de données entre lesdits moyens de mise en forme (2). Interface graphique pour cockpit d'aéronef, caractérisé en ce qu'elle comporte un système de traitement graphique de données (1) selon l'une quelconque des revendications 1 à 6.