FR2959325A1 - Microcontroleur equipe d'une unite de calcul et d'un circuit logique, ainsi que procede de calcul pour la regulation de la commande d'un vehicule - Google Patents

Microcontroleur equipe d'une unite de calcul et d'un circuit logique, ainsi que procede de calcul pour la regulation de la commande d'un vehicule Download PDF

Info

Publication number
FR2959325A1
FR2959325A1 FR1153451A FR1153451A FR2959325A1 FR 2959325 A1 FR2959325 A1 FR 2959325A1 FR 1153451 A FR1153451 A FR 1153451A FR 1153451 A FR1153451 A FR 1153451A FR 2959325 A1 FR2959325 A1 FR 2959325A1
Authority
FR
France
Prior art keywords
logic circuit
microcontroller
calculation
vehicle
configuration data
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.)
Granted
Application number
FR1153451A
Other languages
English (en)
Other versions
FR2959325B1 (fr
Inventor
Felix Streichert
Tobias Lang
Heiner Markert
Axel Aue
Thomas Kruse
Udo Schulz
Thomas Richardsen
Michael Saetzler
Ulrich Schulmeister
Nico Bannow
Holger Ulmer
Matthias Schreiber
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of FR2959325A1 publication Critical patent/FR2959325A1/fr
Application granted granted Critical
Publication of FR2959325B1 publication Critical patent/FR2959325B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/28Interface circuits
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/2406Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
    • F02D41/2409Addressing techniques specially adapted therefor
    • F02D41/2422Selective use of one or more tables

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Feedback Control In General (AREA)
  • Advance Control (AREA)
  • Logic Circuits (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

Microcontrôleur comportant une unité de calcul (11) et un circuit logique (14) pour réguler ou commander un véhicule. L'unité de calcul (11) est reliée au circuit logique (14) et cette dernière comporte des moyens pour calculer une fonction exponentielle et elle est configurable à cet effet.

Description

1 Domaine de l'invention La présente invention se rapporte à un microcontrôleur comportant une unité de calcul et un circuit logique, le microcontrôleur effectuant des calculs pour réguler ou commander un véhicule. Etat de la technique Les problèmes mathématiques nécessitant beaucoup de calculs dans les appareils de commande du domaine automobile, peuvent se résoudre de multiples manières. On ne peut pas utiliser des processeurs standards dans ce domaine intégré, car les coûts élevés, leur plage de températures limitée, les mauvaises prévisibilités et les conditions de sécurité, s'y opposent. En revanche, dans le domaine intégré, on utilise des microcontrôleurs spéciaux. Le calcul effectué par de tels microcontrôleurs est beaucoup plus lent car, en général, leur fréquence est plus faible, ils disposent de moins de mémoire cache, les niveaux de pipeline ne permettent pas une mise en parallèle poussé, il n'y a pas de calcul prévisionnel, etc.. Pour cette raison, dans le domaine intégré nécessitant des possibilités de calculs importantes, on utilise des unités de calculs à multicores ou des processeurs numériques de signaux DSP supplémentaires. Le document EP-1456720 décrit un système à multicores destiné au domaine automobile. Le document 102005022247 décrit un contrôleur de système dans le domaine automobile comportant un processeur numérique de signal. Exposé et avantages de l'invention La présente invention remédie aux inconvénients des solutions connues et a ainsi pour objet un microcontrôleur du type défini ci-dessus, caractérisé en ce que l'unité de calcul est reliée au circuit logique, et le circuit logique comporte des moyens pour calculer une fonction exponentielle, et le circuit logique est configurable. L'invention a également pour objet un procédé de calcul à l'aide d'un microcontrôleur servant à la régulation ou à la commande d'un véhicule, ce procédé étant caractérisé en ce que l'unité de calcul du microcontrôleur est reliée à un circuit logique, le circuit logique est
2 configuré par l'unité de calcul, et le circuit logique calcule des fonctions exponentielles. Le circuit logique du microcontrôleur ainsi proposé, peut faire des calculs à l'aide de fonctions exponentielles et ainsi il permet un traitement plus rapide, plus efficace (coût et capacité en surface), plus efficace du point de vue énergétique, et plus fiable vis-à-vis des problèmes posés au microcontrôleur et pour lesquels le calcul de fonctions exponentielles ne correspond qu'à une partie de la tâche. Un avantage tout particulier réside dans l'exportation du calcul de fonctions exponentielles vers le circuit logique, de sorte que l'unité de calcul du microcontrôleur, est déchargée des calculs et des accès. Cette possibilité d'une configuration du circuit logique, facilite des calculs particulièrement souples tout en restant très efficace. Comme le circuit logique est un composant de circuit, particulier, extérieur au processeur, il n'y a pas de dépendance directe avec le processeur. On évite ainsi les interactions sur la vitesse d'exécution des autres fonctions du processeur. La réalisation des programmes n'est pas influencée directement. Malgré une capacité de fonction limitée, la fonction implémentée s'applique néanmoins de manière extrêmement souple et elle est commandée pour cela par un processeur programmé. Cette solution permet également de répondre à des exigences de fonctionnement en temps réel dans la zone intégrée; Le circuit logique du microcontrôleur, peut s'utiliser d'une manière particulièrement souple s'il est configuré par exemple pour pouvoir lire ses données de configuration dans une mémoire de données de configuration. De telles données peuvent concerner la fonction exponentielle à calculer de même que par exemple les paramètres libres ou les constantes de la fonction exponentielle. Cela permet également de fixer le circuit logique pour calculer les fonctions exponentielles à partir de sommes et le nombre des termes additionnés est prévisible pour la configuration. En outre, on peut additionner différentes fonctions exponentielles et pour chacune des fonctions exponentielles additionnées, les paramètres de même que le nombre des fonctions
3 exponentielles additionnées sont configurables. De plus, la configuration peut concerner la nature du calcul de la fonction exponentielle, par exemple si le circuit logique permettrait différents chemins de calculs ou si dans le circuit logique, il est possible par exemple de mettre en parallèle les calculs. En option, le circuit logique peut lui-même calculer les valeurs à additionner qui résultent du calcul d'un terme interne. Les données de configuration peuvent avantageusement être générées par le microcontrôleur ou par une unité de calcul du microcontrôleur, de préférence en fonction du problème à calculer ou de certaines informations de conduite, générées, et inscrites dans une mémoire de données de configuration à laquelle peut accéder le circuit logique. Ainsi le circuit logique est souple vis-à-vis des problèmes à calculer et il peut également s'adapter à d'autres conditions.
Pour la conversion efficace de la configuration, le circuit logique peut disposer d'une mémoire (locale), reliée, dans laquelle on enregistre les données de configuration. Si l'on veut économiser l'utilisation d'une telle mémoire locale, il peut être avantageux d'enregistrer les données de configuration dans une mémoire globale à laquelle le circuit logique pourra avoir un accès direct (mémoire à accès direct DMA) pour avoir, dans cette solution, une configuration rapide et fiable. Le microcontrôleur selon l'invention peut avantageusement s'utiliser pour calculer en s'appuyant sur des grandeurs d'entrée et des valeurs d'entraînement, des grandeurs de sortie par la loi de régression de Bayes, les calculs des fonctions exponentielles nécessaires à l'application de la régression de Bayes étant effectués par le circuit logique spécialisé. Le microcontrôleur permet ainsi une commande plus efficace et plus précise des fonctions du véhicule grâce à la conception particulièrement efficace du microcontrôleur. Dessins La présente invention sera décrite ci-après de manière plus détaillée, à l'aide d'exemples de réalisation, et des composants d'un
4 microcontrôleur représentés schématiquement dans l'unique figure annexée. Description de modes de réalisation de l'invention Dans la description de l'invention, l'expression "circuit logique" désigne un circuit logique pur, notamment câblé, qui ne dispose pas d'un processeur exécutant un programme. La figure unique montre schématiquement les composants d'un microcontrôleur et leur liaison. Une unité de calcul ou un coeur de processeur 11 d'une unité de calcul, une première unité globale de mémoire 12, une seconde unité globale de mémoire 13 et un circuit logique 14, sont respectivement reliés à la liaison de communication 10 et peuvent communiquer par cette liaison. La liaison de communication 10 est par exemple un système de bus. A la figure 1, la liaison de communication est subdivisée et comporte par exemple un pont de bus 16 reliant les deux bus distincts formant la liaison de communication 10. Le circuit logique 14 est relié à une unité locale de mémoire 15. Les unités globales de mémoire 12 et 13, sont par exemple des mémoires RAM ou des mémoires FLASH. Les deux mémoires globales de la figure unique correspondent à une option de réalisation. La mémoire locale 15 est par exemple une mémoire RAM ou un registre ; elle est de préférence visible dans la zone globale d'adresse. Le pont de bus 16 de la figure, est une option. Comme cela sera détaillé dans la description suivante, un mode de réalisation particulier de l'invention, supprime la mémoire locale 15. Les composants du microcontrôleur présenté à la figure, ne doivent pas être considérés comme des composants définitifs ; en particulier on peut prévoir d'autres coeurs de processeur ou même d'autres architectures. Le circuit 14 est conçu pour calculer une fonction exponentielle ou encore il est configuré pour calculer différentes fonctions exponentielles et le cas échéant la somme de fonctions exponentielles. Le circuit est un automate d'état qui cherche les données d'entrée pour le calcul dans une mémoire d'entrée, il calcule une fonction exponentielle et le cas échéant par une commande d'exécution en communication avec l'unité de calcul ou avec le coeur de processeur 11 du microcontrôleur, il calcule la somme des fonctions exponentielles nécessaires pour toutes les exécutions de boucle ; il sert ainsi dans une certaine mesure de circuit accélérateur pour l'exécution de tâches complexes du microcontrôleur ou des calculs du coeur de 5 processeur 11. Le circuit logique 14 est sous la forme d'un composant câblé, particulier, externe au processeur. Beaucoup de conversions de calcul des fonctions exponentielles dans des circuits câblés, sont connues. On pourra par exemple se référer à l'algorithme BKM (Bajard, Kla, Muller), ou de l'algorithme CORDIC ou encore des développements en série pour avoir une approximation des fonctions exponentielles. On peut également envisager d'autres procédés pour avoir une approximation d'une fonction exponentielle. Une technique de régulation et de commande des systèmes utilisés dans le domaine automobile, consiste à représenter les propriétés spécifiques à un système à l'aide de champs de caractéristiques. Les données de champs de caractéristiques représentent une image approchée du comportement spécifique du système. Pendant le fonctionnement, on utilise directement les données ou on les exploite par interpolation, pour déterminer par exemple un point de fonctionnement ou pour déduire des paramètres inconnus à partir d'états connus et de paramètres connus. Les champs de caractéristiques complexes, ont souvent plusieurs dimensions. Les points d'appui du champ de caractéristique, sont définis par un nombre prédéterminé de données. Les points d'appui sont souvent calculés hors ligne, c'est-à-dire par rapport aux points de l'application, et sont enregistrés de manière fixe dans l'appareil de commande tel qu'il est livré, par exemple dans la mémoire FLASH du microprocesseur. Le défaut de la proposition utilisant un champ de caractéristiques, est que le nombre de points d'appui augmente d'une manière plus que proportionnelle, en fonction du nombre de dimensions. Ces points d'appui utilisent beaucoup plus de place dans la mémoire, de sorte que cette solution n'est pas économique. En outre, pour les valeurs situées entre les points d'appui, il faut procéder par interpolation. Le nombre et la complexité des interpolations augmentent
6 avec le nombre des dimensions. La lecture des points d'appui dans la mémoire et leur interpolation, demande beaucoup de temps et de calcul. En particulier, l'accès aux champs de caractéristiques qui en général n'est pas prévisible et ne constitue pas un accès que l'on peut mettre en mémoire, les champs de caractéristiques étant situés dans la mémoire FLASH, se traduit par des temps d'attente importants pour le processeur ; ces temps d'attente sont de l'ordre de grandeur de plusieurs cadences pour chaque accès en lecture. Ce temps est en réalité non utilisable par ailleurs, ce qui correspond à une perte de io performance de calcul. De plus, l'interpolation et le nombre limité de points d'appui, se répercutent par une perte de précision qui se traduit à son tour par une règle réduite ou une précision de commande réduite. Le circuit logique proposé comme accélérateur de circuit câblé pour les calculs de fonctions exponentielles dans une unité de 15 calcul-appareil de commande permet dans ce contexte par exemple, du fait de ressources de calcul limitées jusqu'alors et non utilisables, à de s méthodes alternatives pour déterminer des paramètres inconnus en fonction de paramètres connus (par exemple mesurer et/ou calculer) pour la commande des fonctions du véhicule et d'utiliser les paramètres 20 dans l'unité de calcul en temps réel. Comme exemple, il y a une réalisation particulièrement avantageuse de procédés de régression non paramétrables, tels que la régression de Bayes. Pour la prévision, par exemple de grandeurs caractéristiques concernant le moteur (par exemple des grandeurs liées 25 à la technique de combustion, des grandeurs liées au système d'air, etc..), pour la commande et/ou pour la régulation, on peut ainsi utiliser le procédé de régression de Bayes, comme par exemple Kriging, les procédés de Gauss, les procédés de Gauss légers, etc.., dans l'appareil de commande. Une partie du calcul du procédé de régression de Bayes, 30 notamment du calcul des fonctions exponentielles ou des étapes de calcul pour calculer les fonctions exponentielles est transférée au circuit logique. Par comparaison aux procédés connus, de tels modèles de régression de Bayes donnent des résultats plus précis et s'utilisent 35 de façon plus souple. Les modèles de régression de Bayes, peuvent
7 copier sans connaissance préalable et sans paramétrage, sans difficulté, des relations non linéaires à dimensions très grandes, en se fondant uniquement sur des données d'entraînement. Il s'agit de modèles dits de "boîte noire".
En d'autres termes, de manière simple, à partir d'un nombre important de fonctions aléatoires déterminées, en s'appuyant sur les écarts de certaines grandeurs d'entrée, on utilise les valeurs d'essai mesurées hors ligne avant l'utilisation de l'appareil de commande pour faire la moyenne des meilleures fonctions aléatoires servant à déterminer les paramètres requis. La précision du procédé correspond dans cette image simplifiée, à l'écart entre les meilleures fonctions moyennes. Cela permet aux modèles de régression de Bayes de donner une information concernant la variance du modèle (incertitude du modèle) contrairement aux procédés connus avec en plus prévision de modèle. Dans une telles application du microcontrôleur ou du circuit logique, l'appareil de commande reçoit les signaux d'appareils de commande extérieurs, par exemple de capteurs ou autres appareils de commande, unités de calcul et autres modules. Ces grandeurs sont appelées ci-après grandeurs d'entrée et peuvent être par exemple les signaux de température, les signaux de vitesse de rotation, les signaux de quantité, etc. Une unité de mémoire enregistre ces valeurs qui ont été déterminées pour certaines grandeurs hors ligne, c'est-à-dire avant la mise en oeuvre de l'appareil de commande ou du véhicule au cours de mesures d'essai et qui sont enregistrées dans l'unité de mémoire. Ces valeurs seront appelées ci-après et dans la suite, valeurs d'essai. Les expressions "hors ligne" et "avant la mise en oeuvre", désignent une phase au cours de laquelle l'appareil de commande, n'a pas été utilisé en mode de fonctionnement normal du véhicule pour des missions de régulation en temps réel et de commande. ("en ligne", "en fonctionnement"), mais au cours duquel l'appareil de commande a été testé, calibré et déterminé vis-à-vis de fonctions caractéristiques du véhicule dans l'appareil de commande, par exemple dans une application de l'appareil de commande faite dans l'atelier automobile ou
8 d'un constructeur de véhicules, dans un atelier ou dans un fonctionnement d'essai. La mémoire peut également contenir des paramètres et des grandeurs reçus par l'appareil de commande et calculés et qui comptent le cas échéant comme grandeurs d'entrée. Le circuit logique détermine de lui-même ou en liaison avec l'unité de calcul du programme de commande, une ou plusieurs grandeurs de sortie pour répondre aux fonctions de commande et de régulation de l'appareil de commande. Les grandeurs de sortie caractérisent ainsi les grandeurs nécessaires à la commande/régulation ou des grandeurs intermédiaires qui ne sont pas mesurées directement dans le véhicule ou seulement de manière très compliquée ou sont déterminées dans les mêmes conditions, et peuvent ainsi être appelées grandeurs d'entrée disponibles travaillant selon la régression de Bayes ; l'appareil de commande dispose de données d'essai enregistrées dans la mémoire et qui caractérisent la grandeur de repos, à déterminer, en tenant compte des grandeurs d'entrée caractéristiques pour les grandeurs de sortie à déterminer. Pour cela, l'unité de calcul peut traiter les algorithmes nécessaires pour la régression, en partie en programme et à partir de certaines étapes de calcul contenant le calcul des fonctions exponentielles, on peut se déporter sur une logique spéciale. La grandeur de sortie, déterminée, ou un signal de régulation ou de commande lié à cette grandeur de sortie, est émis par une sortie de l'appareil de commande par exemple un actionneur ou un moyen analogue comme mémoire intermédiaire pour les calculs suivants. Les fondements de la régression de Bayes se trouvent dans le document [Gaussian Processes for Machine Learning, C. E. Rasmusen and C. Williams, MIT Press, 2006]. La formule de base pour le calcul d'une prévision prédéterminée d'un paramètre requis en fonction des paramètres connus dans l'appareil de commande, en temps réel, c'est-à-dire pendant le fonctionnement de l'appareil de commande, se traduit par la commande de fonction de roulage avec l'application de tels procédés de régression utilisés pour calculer les fonctions exponentielles, notamment selon le procédé utilisant comme indiqué ci-dessus, le noyau de fonction au carré. De tels procédés ou
9 des procédés comparables, peuvent s'utiliser d'une façon particulièrement efficace dans les appareils de commande de véhicule grâce à la délocalisation prévue ici de certaines opérations de calcul concernant la liaison avec le calcul des fonctions exponentielles dans le circuit logique 14. Comme exemples particulièrement caractéristiques pour les fonctions exponentielles à calculer ou pour les fonctions exponentielles dont on veut accélérer le calcul, qui pourront se faire selon un procédé non paramétré, il y a la formule suivante, sans limiter l'invention à des formules de ce type. résultat = Cl * e // É C2. C3, -C4, z=1 C5., La formule correspond à la fonction exponentielle e(), avec un terme intérieur. Le terme intérieur normalise les grandeurs d'entrée C4 pour la division par C5 et calcule la distance par rapport aux valeurs d'entraînement ou aux valeurs caractéristiques spécifiques en faisant la différence de C3. Le résultat intermédiaire est transformé en une exponentielle par C6 pour ensuite être multiplié par un coefficient de pondération C2 et être additionné pour former une somme. Ce résultat de mesure (== terme interne), applique ensuite la fonction e() le résultat peut être pondéré en multipliant par Cl. De manière caractéristique, on a C6 = 2 et C2 = 1. On calcule la fonction exponentielle comme somme de N termes en fonction de la dimension des grandeurs d'entrée. Les valeurs C 1-C6 ainsi que l'indice courant de la sommation (valeur initiale de la somme, nombre de termes, valeur finale de la somme) peuvent être configurés. En variante, une partie seulement des ces paramètres sera configurée, alors que les autres paramètres seront donnés de manière fixe.
La fonction exponentielle peut se calculer avec ou sans terme intérieur, totalement dans le circuit logique ; les calculs partiels peuvent être faits de façon déportée et la fonction exponentielle peut également faire partie d'une formule plus grande que calcule le circuit logique. En outre, le circuit logique est réalisé pour qu'à côté d'un calcul
10 de fonctions exponentielles, il puisse également faire d'autres calculs en parallèle ou à la place du calcul de fonctions exponentielles. Le circuit logique permet de mettre, de façon quelconque en parallèle, par l'exécution interne, des algorithmes. Vis-à-vis de l'extérieur, il suffit d'assurer la consistance ou de signaler à l'extérieur des états non consistants, à l'aide de moyens appropriés. En option, le circuit logique peut calculer simultanément plus d'une formule ou d'une mission sans toutefois influencer entre elles les différentes grandeurs d'entrée. La conversion peut se faire par des opérateurs parallèles ou des opérateurs successifs, séquentiels, dans un calculateur. Pour distinguer les formules, l'accélérateur de circuit, connaît ainsi des paramètres de configuration de chaque formule. De façon avantageuse, il est possible de commuter entre eux les différents jeux de configurations ou avoir des accès séparés aux différents jeux de configurations ou encore réutiliser des parties de jeux de configurations d'une formule ou réutiliser d'autres formules ou d'autres problèmes. En option, le circuit logique doit pouvoir être utilisé périodiquement. Toutes les données de configuration ou une partie des données de configuration sont actualisées par la coopération avec le processeur programmé et le cas échéant avec d'autres composants de circuit concerné, avant de relancer à chaque fois l'exécution. L'invention peut être complétée par une possibilité en option consistant à accumuler plusieurs résultats calculés, par exemple pour exécuter une boucle externe. Le circuit accélérateur est configuré pour appliquer les résultats séparés, à accumuler (par exemple les paramètres ou les données de configuration) des différentes missions de manière sélective. Le circuit logique 14 n'est pas intégré dans le coeur de processeur 11 comme le montre la figure 1, mais il est indépendant et ainsi il n'est pas soumis à l'influence directe du noyau de processeur 11. Le circuit logique interagit avec le programme du processeur 11. Il y a ainsi une communication entre le processeur 11 et le circuit logique, qui permet le calcul correct, c'est-à-dire avec des paramètres corrects
11 lancé à l'instant souhaité (ou aussi arrêtés) et garantissant le transfert correct des résultats. La communication entre le processeur 11, le circuit logique 14 et les mémoires 12, 13, peut se faire par un bus commun 10 comme le montre la figure 1 à l'aide de chemins de données découplés les uns des autres et reliés par un pont de bus, un Crossbar, par liaison directe ou par d'autres réalisations. De plus, on peut envisager en option, l'utilisation de mécanismes de communication et de synchronisation configurables, comme l'envoi d'interruptions entre les composants concernés du processeur programmé 11, du circuit logique 14 et d'autres composants concernés. Le circuit logique 14 est configurable de manière dynamique selon le temps de fonctionnement, par le processeur : • Nombre de boucles, c'est-à-dire par exemple dans le cas d'une fonction exponentielle, il s'agit d'une valeur sous forme de nombre entier, tel que le nombre de termes de la somme ou dans le cas d'un nombre de fonctions exponentielles ou d'une somme de plusieurs fonctions exponentielles, le nombre de fois que les fonctions exponentielles seront exécutées l'une après l'autre, • Constantes - les constantes ou les paramètres peuvent être fixés suivant le problème ou selon les fonctions du véhicule ou les états du véhicule, • Des indications spéciales de calcul de formule, c'est-à-dire la manière d'effectuer le calcul, • Le cas échéant, la nature de l'interaction avec le processeur, • Le cas échéant, des informations concernant d'autres calculs à effectuer. Les données de configuration peuvent être regroupées en options suivant un certain type de relation sous la forme d'une ou plusieurs grappes. Le circuit logique 14 doit connaître le type d'accès à chaque grappe de configurations. Le cas échéant, le circuit logique 14 est configuré en fonction du temps de parcours ou de la position ou de l'accès à la grappe. Les données de configuration peuvent être mémorisées dans une mémoire locale 15, seulement dans l'une des unités de mémoire globale 12 et 13 ou être réparties entre les
12 composants de mémoire. A titre d'exemple, si les données de configuration sont enregistrées totalement ou en partie dans une ou plusieurs mémoires globales 11 et 12, le circuit logique 14 peut accéder à la plage de mémoire globale visible ou à cette mémoire globale en particulier, par un accès direct en mémoire (DMA). En option, l'indexage des constantes des formules ou des problèmes peut se faire pour des raisons d'optimisation de l'accès pour que suivant le temps, on aura un accès linéaire ou pratiquement linéaire aux constantes d'un réseau. La même remarque s'applique également à l'exécution d'autres formules dont les données de configuration sont alors juxtaposées de manière idéale sous une forme linéaire. En variante de la possibilité de configuration dynamique, il est possible comme indiqué, de fixer directement différentes valeurs dans le circuit accélérateur. Il est également possible de prévoir des valeurs alternatives fixes ou configurables à partir desquelles, on peut déduire directement la configuration décrite ci-dessus. La configuration dynamique du circuit logique 14 se fait par la description de registres de configurations ou de mémoires de configurations par les autres composants du système, en particulier par les programmes exécutés dans le processeur 11. En option, la configuration peut se faire par un contrôleur d'accès direct en mémoire (DMA) lui-même commandé par les programmes du processeur. On peut également avoir une configuration par d'autres composants du système global. Comme décrit, le circuit logique 14 peut disposer d'une mémoire locale ou d'un jeu de registres locaux d'où le circuit extrait la configuration. Si le circuit logique 14 dispose d'une telle mémoire locale ou d'un tel jeu de registres locaux 15, cela doit être visible globalement en option, c'est-à-dire se trouver dans la plage d'adresse globale. A la demande, les contenus peuvent ainsi être modifiés par les différents composants tels que le processeur programmé. A côté de la configuration du circuit accélérateur, cette procédure permet d'utiliser également la mémoire 15 pour d'autres applications, si la mémoire 15
13 n'est pas nécessaire ou n'est pas totalement nécessaire au calcul du circuit logique 14. Le circuit logique peut disposer de moyens internes d'optimisation qui transforment un calcul préalable ou un chargement préalable de données et les résultats ou les résultats intermédiaires dans une mémoire tampon ou dans un pipeline. Pour avoir à une flexibilité élevée, le circuit logique peut disposer chaque fois en option, de capacités d'interruption, d'enregistrements de valeurs intermédiaire, de reprises de calcul, de commutations sur le calcul de la formule avec d'autres paramètres de configuration et d'autres moyens d'optimisation. Lors de l'interruption, toutes les informations caractéristiques doivent être enregistrées en mémoire et le cas échéant, être rendues lisibles pour permettre une reprise du calcul immédiatement ou à un instant ultérieur. On peut envisager de rejeter une petite partie négligeable d'un calcul déjà effectué, (négligeable signifie que le temps de calcul n'a pas d'influence sur l'exécution en coopérant avec les autres composants du système). Le démarrage du calcul par le circuit logique peut être lancé par n'importe quel autre composant du système, en particulier par le processeur programmé.25

Claims (1)

  1. REVENDICATIONS1 °) Microcontrôleur comportant une unité de calcul (11) et un circuit logique (14), le microcontrôleur effectuant des calculs pour réguler ou commander un véhicule, microcontrôleur caractérisé en ce que l'unité de calcul (11) est reliée au circuit logique (14), - le circuit logique (14) comporte des moyens pour calculer une fonction exponentielle, et - le circuit logique (14) est configurable. 2°) Microcontrôleur selon la revendication 1, caractérisé en ce que le circuit logique (14) peut être configuré pour les paramètres configurables de la fonction exponentielle. 3°) Microcontrôleur selon la revendication 1, caractérisé en ce que le circuit logique (14) peut être configuré pour le nombre de calculs de fonctions exponentielles. 4°) Microcontrôleur selon la revendication 1, caractérisé en ce que le circuit logique (14) comporte des moyens pour faire la somme de résultats de plusieurs fonctions exponentielles calculées. 5°) Microcontrôleur selon la revendication 1, caractérisé en ce que le circuit logique (14) est configuré pour le type de calcul de fonctions exponentielles. 6°) Microcontrôleur selon la revendication 1, caractérisé en ce que 16 le circuit logique (14) accède aux données de configuration d'une mémoire de données de configuration (12, 13, 15) pour effectuer une configuration. 7°) Microcontrôleur selon la revendication 6, caractérisé en ce que le microcontrôleur comporte des moyens pour établir les données de configuration du circuit logique (14) en fonction des calculs à effectués, et pour les inscrire dans les mémoires de configurations (12, 13, 15). 8°) Microcontrôleur selon la revendication 7, caractérisé en ce que le microcontrôleur comporte des moyens pour inscrire les données de configuration dans les mémoires de données de configuration (12, 13, 15) par un accès direct en mémoire. 9°) Microcontrôleur selon la revendication 6, caractérisé en ce que les données de configuration sont enregistrées dans une mémoire locale (15) reliée au circuit logique (14). 10°) Microcontrôleur selon la revendication 6, caractérisé en ce que les données de configuration sont enregistrées dans une mémoire globale (12, 13) à laquelle le circuit logique (14) peut accéder par un accès direct en mémoire. 11°) Microcontrôleur selon la revendication 1, caractérisé en ce qu' il comporte des moyens qui, pendant le fonctionnement du véhicule, permettent sur la base d'au moins une grandeur d'entrée déterminée pendant le fonctionnement, de calculer au moins une grandeur de sortie pour la commande des fonctions du véhicule, ainsi que des moyens pour calculer la grandeur de sortie en utilisant la loi de 17 régression de Bayes appliquée à des valeurs d'essai obtenues avant le fonctionnement pour les grandeurs d'entrée et les grandeurs de sortie, le circuit logique (14) calculant la régression de Bayes avec des fonctions exponentielles. 12°) Procédé pour exécuter les calculs à l'aide d'un microcontrôleur pour réguler et/ ou commander un véhicule, procédé caractérisé en ce que l'unité de calcul (11) du microcontrôleur est reliée à un circuit logique (14), - le circuit logique (14) est configuré par l'unité de calcul (11), et - le circuit logique (14) calcule des fonctions exponentielles. 13°) Procédé selon la revendication 11, caractérisé en ce que pendant un fonctionnement du véhicule, sur le fondement d'au moins une grandeur d'entrée obtenue pendant le fonctionnement, on calcule au moins une grandeur de sortie pour commander les fonctions du véhicule, et le calcul des grandeurs de sortie, se fait en appliquant la loi de régression de Bayes avec des valeurs d'essai obtenues avant la mise en oeuvre pour les grandeurs de sortie et les grandeurs d'entré, et les étapes de calcul de la loi de régression de Bayes qui comportent des fonctions exponentielles, sont calculées de manière correspondantes par le circuit logique (14).30
FR1153451A 2010-04-27 2011-04-21 Microcontroleur equipe d'une unite de calcul et d'un circuit logique, ainsi que procede de calcul pour la regulation de la commande d'un vehicule Active FR2959325B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102010028259.6 2010-04-27
DE102010028259A DE102010028259A1 (de) 2010-04-27 2010-04-27 Mikrocontroller mit einer Recheneinheit und einer Logikschaltung sowie Verfahrung zur Durchführung von Rechnungen durch einen Mikrocontroller für eine Regelung oder eine Steuerung in einem Fahrzeug

Publications (2)

Publication Number Publication Date
FR2959325A1 true FR2959325A1 (fr) 2011-10-28
FR2959325B1 FR2959325B1 (fr) 2019-09-20

Family

ID=44751583

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1153451A Active FR2959325B1 (fr) 2010-04-27 2011-04-21 Microcontroleur equipe d'une unite de calcul et d'un circuit logique, ainsi que procede de calcul pour la regulation de la commande d'un vehicule

Country Status (4)

Country Link
US (1) US8731737B2 (fr)
CN (1) CN102236325B (fr)
DE (1) DE102010028259A1 (fr)
FR (1) FR2959325B1 (fr)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9448940B2 (en) * 2011-10-28 2016-09-20 The Regents Of The University Of California Multiple core computer processor with globally-accessible local memories
US8417689B1 (en) * 2011-11-21 2013-04-09 Emc Corporation Programming model for transparent parallelization of combinatorial optimization
DE102013200932B4 (de) * 2013-01-22 2015-04-02 Robert Bosch Gmbh Verfahren und Vorrichtung zur Überwachung einer Funktion eines Motorsteuergeräts zum Einsatz in einem Motorsystem mit einem Verbrennungsmotor
DE102013206276A1 (de) 2013-04-10 2014-10-16 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erstellen eines Funktionsmodells für ein Steuergerät eines Motorsystems
DE102013206292A1 (de) 2013-04-10 2014-10-16 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erstellen eines datenbasierten Funktionsmodells
DE102013206320A1 (de) 2013-04-10 2014-10-16 Robert Bosch Gmbh Verfahren und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells
DE102013213420A1 (de) 2013-04-10 2014-10-16 Robert Bosch Gmbh Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
DE102013212842A1 (de) * 2013-07-02 2015-01-08 Robert Bosch Gmbh Verfahren zum Betreiben eines Steuergeräts sowie Steuergerät mit einer Modellberechnungseinheit
DE102013224694A1 (de) 2013-12-03 2015-06-03 Robert Bosch Gmbh Verfahren und Vorrichtung zum Ermitteln eines Gradienten eines datenbasierten Funktionsmodells
DE102013227183A1 (de) 2013-12-27 2015-07-02 Robert Bosch Gmbh Verfahren und Vorrichtung zum Bereitstellen eines spärlichen Gauß-Prozess-Modells zur Berechnung in einem Motorsteuergerät
DE102013227181A1 (de) 2013-12-27 2015-07-02 Robert Bosch Gmbh Verfahren und Vorrichtung zum Durchführen einer Berechnung in einer hardwareimplementierten Modellberechnungseinheit in einem Motorsteuergerät
DE102014207683A1 (de) 2014-04-24 2015-10-29 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erstellen eines datenbasierten Funktionsmodells
DE102014208379A1 (de) 2014-05-06 2015-11-12 Robert Bosch Gmbh Verfahren und Vorrichtung zum Ermitteln eines Funktionswerts eines bezüglich einer Eingangsgröße invertierten datenbasierten Funktionsmodells
DE102014225039A1 (de) 2014-12-05 2016-06-09 Robert Bosch Gmbh Verfahren und Vorrichtung zum Bereitstellen von spärlichen Gauß-Prozess-Modellen zur Berechnung in einem Motorsteuergerät
DE102015203771A1 (de) 2015-03-03 2016-09-08 Robert Bosch Gmbh Verfahren und Vorrichtung zum Auswerten eines datenbasierten Funktionsmodells
DE102015204218A1 (de) 2015-03-10 2016-09-15 Robert Bosch Gmbh Verfahren und Vorrichtung zum Berechnen eines Funktionswerts eines invertierten datenbasierten Funktionsmodells
DE102015208513A1 (de) 2015-05-07 2016-11-10 Robert Bosch Gmbh Verfahren und Vorrichtung zum Berechnen eines datenbasierten Multi-Output-Funktionsmodells
DE102015211820A1 (de) 2015-06-25 2016-12-29 Robert Bosch Gmbh Verfahren zum Betreiben einer Recheneinheit eines Kraftfahrzeugs mit einer Prozessoreinheit und einer Logikeinheit
DE102016216943A1 (de) 2016-09-07 2018-03-08 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erstellen eines datenbasierten Funktionsmodells zur Berechnung in einer Modellberechnungseinrichtung
WO2018067994A1 (fr) * 2016-10-06 2018-04-12 JPS Engineering Corp. Systèmes et procédés de cybersécurité
DE102018201411A1 (de) * 2018-01-30 2019-08-01 Robert Bosch Gmbh Verfahren zum Ermitteln eines zeitlichen Verlaufs einer Messgröße, Prognosesystem, Aktorsteuerungssystem, Verfahren zum Trainieren des Aktorsteuerungssystems,Trainingssystem, Computerprogramm und maschinenlesbares Speichermedium
DE102020206916A1 (de) 2020-06-03 2021-12-09 Robert Bosch Gesellschaft mit beschränkter Haftung Steuereinrichtung und Verfahren zum Auswählen von Auswertungspunkten für ein Bayessches Optimierungsverfahren
CN113969844B (zh) * 2020-07-22 2023-09-12 广州汽车集团股份有限公司 一种can总线与发动机控制单元通信数据处理方法及系统
GB2615843A (en) * 2022-05-26 2023-08-23 Secondmind Ltd Engine control unit calibration

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4881172A (en) * 1986-12-22 1989-11-14 Lord Corporation Observer control means for suspension systems or the like
US6076030A (en) * 1998-10-14 2000-06-13 Carnegie Mellon University Learning system and method for optimizing control of autonomous earthmoving machinery
US6671611B1 (en) * 2000-11-28 2003-12-30 Bombardier Motor Corporation Of America Method and apparatus for identifying parameters of an engine component for assembly and programming
DE50211230D1 (de) 2001-12-11 2007-12-27 Continental Teves Ag & Co Ohg Mehrkerniges redundantes kontrollrechnersystem, rechnerverbund für sicherheitskritische anwendungen in kraftfahrzeugen sowie dessen verwendung
US6799102B2 (en) * 2002-04-24 2004-09-28 Delphi Technologies, Inc. Automatic climate control with tunable transient response
JP3760911B2 (ja) * 2002-11-27 2006-03-29 トヨタ自動車株式会社 モデル作成方法、モデル作成プログラム及びシミュレーション装置
JP2005180643A (ja) * 2003-12-22 2005-07-07 Jatco Ltd トルク伝達系の制御装置
US6976388B2 (en) 2004-05-14 2005-12-20 General Motors Corporation Diagnostic method for a torque control of an electrically variable transmission
CN101131604A (zh) * 2006-08-23 2008-02-27 视翔科技(上海)有限公司 基于指令类型的cpu时钟控制电路
US7565334B2 (en) * 2006-11-17 2009-07-21 Honda Motor Co., Ltd. Fully bayesian linear regression
US20110264353A1 (en) * 2010-04-22 2011-10-27 Atkinson Christopher M Model-based optimized engine control

Also Published As

Publication number Publication date
FR2959325B1 (fr) 2019-09-20
CN102236325A (zh) 2011-11-09
US20110282517A1 (en) 2011-11-17
CN102236325B (zh) 2017-01-18
DE102010028259A1 (de) 2011-10-27
US8731737B2 (en) 2014-05-20

Similar Documents

Publication Publication Date Title
FR2959325B1 (fr) Microcontroleur equipe d'une unite de calcul et d'un circuit logique, ainsi que procede de calcul pour la regulation de la commande d'un vehicule
EP3286647A1 (fr) Placement d'une tâche de calcul sur un processeur fonctionnellement asymetrique
FR2873830A1 (fr) Procede d'ordonnancement de traitement de taches et dispositif pour mettre en oeuvre le procede
FR3004567A1 (fr) Unite de calcul de modele et appareil de commande ainsi que procede pour calculer un tel modele fonctionnel fonde sur des donnees
FR2881239A1 (fr) Procede de gestion d'acces a des ressources partagees dans un environnement multi-processeurs
EP2870535B1 (fr) Procede d'execution, au sein d'un systeme embarque multitaches, d'une application cadencee par plusieurs domaines de temps differents incluant une gestion d'interruptions
US20190108259A1 (en) Serverless composition of functions into applications
EP1310847B1 (fr) Système de téléchargement et de télémaintenance d'une carte électronique
CN111380499B (zh) 转动角度的检测方法及装置
FR3075414B1 (fr) Procede de gestion d'une pluralite de taches par un calculateur automobile multicœur
FR2995424A1 (fr) Procede et dispositif de decompte du temps deporte pour unite de traitement dans un systeme de traitement de l'information
FR3035529A1 (fr) Procede et dispositif de couplage de simulation d'un systeme partiel d'un controleur a commande evenementielle et systeme partiel d'installation
US11700306B2 (en) Context aware edge computing
EP2656171A1 (fr) Procede de gestion de la consommation energetique d'une application executable dans differents environnements et architecture logicielle mettant en uvre un tel procede
CA2886466A1 (fr) Systeme multicoeur de traitement de donnees a dispositifs d'entree/sortie locaux et globaux et interface graphique comportant un tel systeme de traitement de donnees
JP2019125093A (ja) 電子制御装置
EP2499570A1 (fr) Procede et dispositif d'optimisation d'execution d'applications logicielles dans une architecture multiprocesseur comprenant plusieurs controleurs d'entree/sortie et unites de calcul secondaires
WO2023180265A1 (fr) Procédé de gestion d'exécution d'une pluralité de fonctions
FR2908909A1 (fr) Procede de gestion d'une unite de calcul
EP3506202A1 (fr) Système et procédé adaptatifs de suivi automatique d'au moins une cible dans au moins un flux vidéo
FR3138535A1 (fr) « Procédé et système de surveillance d’un modèle fonctionnel »
FR3056782A1 (fr) Generation de codes applicatifs a partir d'une specification formelle
FR2871592A1 (fr) Procede de recherche et de transmission des temps d'execution de programmes dans des systemes embarques
US20230316359A1 (en) Intelligent supply chain optimization
US20230214549A1 (en) Source operator related techniques for use in streaming analytics

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 5

PLSC Publication of the preliminary search report

Effective date: 20160108

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9

PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11

PLFP Fee payment

Year of fee payment: 12

PLFP Fee payment

Year of fee payment: 13

PLFP Fee payment

Year of fee payment: 14