Abstract:
A method of performing Electronic System Level simulation using a multi-core computing system, comprising the steps of: A) Running a Discrete Event Simulation kernel on a core of said multi-core computing system, within a dedicated OS-kernel-level thread; B) Using said Discrete Event Simulation kernel for generating a plurality of OS-kernel-level threads, each associated to a respective core, and for distributing a plurality of concurrent processes of said simulation among them; C) Carrying out parallel evaluation of said concurrent processes within the corresponding threads using respective cores; and then D) Using said Discrete Event Simulation kernel for processing event notifications, updating a simulation time and scheduling next processes to be evaluated; said steps C) and D) being carried out iteratively until the end of the simulation. A computer program product including a hardware description Application Program Interface and a Discrete Event Simulation kernel adapted for carrying out such a method.
Abstract:
L'architecture électronique assurant la gestion des fonctions d'un véhicule, lesdites fonctions étant mises en œuvre via un ensemble de capteurs et d'actionneurs, ladite architecture comporte au moins : - un calculateur central (31, 32); - un réseau de communication temps réel (34, 36); - un ensemble de modules d'interface (33), chaque module : o agrégeant des signaux issus d'au moins un desdits capteurs et envoyant lesdits signaux audit calculateur central via ledit réseau de communication; o et/ou distribuant des signaux de commande vers au moins un desdits actionneurs; ledit calculateur central pilotant lesdits actionneurs en fonction des signaux issus desdits capteurs, les signaux de commande desdits actionneurs étant envoyés auxdits modules d'interface (33) via ledit réseau de communications.
Abstract:
Système de calcul distribué comprenant une pluralité d'unités de calcul (UC) et une mémoire partagée (MP) entre lesdites unités de calcul, caractérisé en ce qu'il comprend au moins un module matériel de détection des conflits d'accès (INSP) desdites unités de calcul à ladite mémoire partagée; ledit ou chaque dit module matériel de détection des conflits étant configuré pour : mémoriser au moins une structure de données probabiliste, indicative de la totalité des adresses de ladite mémoire partagée impliquées dans la totalité des transactions en cours; recevoir au moins un message indicatif d'une requête d'accès, par une dite unité de calcul, à au moins une adresse de ladite mémoire partagée; déterminer, à partir de ladite structure de données probabiliste, si ladite adresse est déjà impliquée dans une transaction en cours, et transmettre à ladite unité de calcul un message de présence ou absence de conflits d'accès; recevoir au moins un message indicatif ou confirmatif d'une réservation ou d'une libération d'au moins une dite adresse de ladite mémoire partagée, et mettre à jour ladite structure de données probabiliste pour que les adresses réservées et les adresses libérées soient considérées, respectivement, comme étant/n'étant pas impliquées dans une transaction en cours. Procédé d'utilisation d'un tel système.
Abstract:
Procédé de simulation parallèle de niveau système électronique au moyen d'un système informatique multi-cœurs, comprenant l'évaluation parallèle d'une pluralité de processus concurrents de ladite simulation sur une pluralité de cœurs dudit système informatique et comprenant un sous-procédé de détection de conflits d'accès à une mémoire partagée d'un système électronique simulé, ledit sous-procédé étant mis en œuvre par un noyau de simulation exécuté par ledit système informatique et comprenant : une étape de construction d'un graphe orienté représentatif d'accès à ladite mémoire partagée par les processus évalués par lesdits processus concurrents; et une étape de détection de boucles dans ledit graphe; une boucle étant considérée représentative d'un conflit d'accès à ladite mémoire partagée. Produit programme d'ordinateur pour la mise en œuvre d'un tel procédé.
Abstract:
La présente invention concerne un procédé pour sélectionner, parmi une pluralité de ressources de traitement capables dans un système de traitement de l'information d'effectuer un même type de traitement, l'une des ressources afin qu'elle effectue un traitement dudit type. Le procédé comporte une étape d'estimation du délai probable avant défaillance pour chacune des ressources, la ressource étant sélectionnée de telle sorte que les délais probables avant défaillance des ressources évoluent de manière sensiblement identique. Application : systèmes embarqués multiprocesseur
Abstract:
La présente invention concerne un processeur NTT par flot comprenant une pluralité (K) d'étages de traitement (210 0 ,...,210 K-1 ) organisés en pipeline (210); une pluralité (G+1) de bancs de mémoires (220 g , g = 0, G); un module de gestion de lecture (260) pour lire, au sein d'une mémoire ( MEM g/k ) d'un banc de mémoires (220 g ) du processeur, des jeux de facteurs de rotation destinés à paramétrer un étage de traitement ( 210k ); un module de gestion d'écriture (270) pour recevoir sous forme de blocs successifs un ensemble de facteurs de rotation et écrire lesdits jeux de facteurs de rotation dans les mémoires d'un banc de mémoires, l'écriture étant effectuée de manière cyclique dans les bancs de mémoires, chaque nouvel ensemble de facteurs de rotation étant écrit dans un nouveau banc de mémoire; et un module de contrôle pour contrôler l'écriture et la lecture des facteurs de rotation ainsi que la progression des blocs de données à travers les étages de traitement.
Abstract:
La présente invention concerne un circuit de génération de facteurs de rotation (400) pour processeur NTT. Le circuit comprend un module gestionnaire de cache (410), un banc de multiplieurs modulaires (420) et un contrôleur central (430). Le module gestionnaire de cache comprend un contrôleur local (411) et une mémoire cache (412) dans laquelle sont stockés les opérandes pour le calcul des facteurs de rotation futurs. Le banc de multiplieurs modulaires comprend en entrée une matrice d'interconnexion distribuant les opérandes sur les entrées des multiplieurs modulaires. Le circuit peut être configuré pour minimiser la taille mémoire du cache et/ou réduire la latence de calcul de la séquence de facteurs de rotation. Le circuit de génération peut enfin comprendre plusieurs modules gestionnaires de calcul partageant un même banc de multiplieurs modulaires pour générer des séquences de facteurs de rotation sur plusieurs corps finis.
Abstract:
L'invention propose un procédé pour accélérer la mise à jour des éléments de liaison dans une simulation d'un système générée selon un langage de description matérielle donné, le procédé comprenant une phase d'évaluation des processus éligibles du système, la phase d'évaluation comprenant des accès en écriture (500) ou en lecture à des éléments de liaison. Pour chaque élément de liaison deux emplacements mémoires d'écriture sont prévus. La phase d'évaluation comprend la mise à jour d'un élément de liaison pour chaque accès en écriture ou en lecture de l'élément de liaison. La mise à jour comprend les étapes suivantes : - recevoir un mot de sélection associé à l'élément de liaison (501); - sélectionner l'un des deux emplacements d'écriture associés à l'élément de liaison en fonction de la valeur du mot de sélection reçu pour l'élément de liaison; et - mettre à jour la valeur courante de l'élément de liaison à partir de l'emplacement mémoire d'écriture sélectionné (503, 505).
Abstract:
La présente invention concerne un dispositif pour accélérer, sur une plateforme comportant une pluralité d'unités de traitement, l'exécution d'une simulation SystemC d'un système, ladite simulation comportant un noyau SystemC et des processus SystemC. Le dispositif comporte des moyens matériels pour ordonnancer les processus SystemC sur les unités de traitements de manière dynamique pendant l'exécution de la simulation, ces moyens permettant notamment de préempter les unités de traitement.