Brevet FR2958058A1 — publié le 20110930

L'invention concerne, de façon générale, l'exploitation optimisée de microcontrôleurs équipés de réseaux de comptage de temps. Plus précisément, l'invention concerne un circuit électronique programmé pour fournir une mesure numérique d'une durée caractéristique d'un phénomène se manifestant par des occurrences successives, l'apparition de chaque occurrence étant définie par le front avant d'un signal image représentatif de ce phénomène, et ce circuit comprenant un réseau de comptage de temps incluant des cellules locales de comptage. La fabrication des circuits électroniques a aujourd'hui atteint un tel niveau d'intégration que de nombreux processus techniques et notamment physiques sont maintenant pilotés au moyen de microcontrôleurs. C'est notamment le cas dans l'automobile, au point que des microcontrôleurs particulièrement adaptés à ce domaine d'application sont aujourd'hui commercialement disponibles, tels que les microcontrôleurs portant les références TC1736, TC1762, TC1766, TC1767, TC1796 et TC1797 fabriqués par la Société Infineon. Compte tenu du nombre important de processus à surveiller ou piloter, les microcontrôleurs de ce type sont dotés d'un réseau de comptage de temps, dénommé GPTA d'après la dénomination anglaise "General Purpose Timers Array", et comprenant au moins des horloges électroniques et un ensemble de cellules locales de comptage de temps, elles-mêmes dénommées LTC d'après la dénomination anglaise "Local Timer Cells". Les cellules locales sont individuellement dotées de diverses fonctionnalités, telles par exemple que la capacité à détecter le dépassement d'un seuil d'amplitude par un signal électrique qui leur est fourni, ou la capacité à compter des impulsions d'un signal d'horloge qu'elles reçoivent, ou encore de mémoriser un nombre d'impulsions préalablement comptées. Ces cellules locales peuvent en outre être reliées les unes aux autres, le choix de leurs fonctionnalités et de leur mode de liaison étant réalisé par programmation. Bien que tout microcontrôleur comprenne une unité centrale susceptible de piloter les cellules locales de comptage de temps, notamment dans le but de fournir une mesure numérique d'une durée caractéristique d'un phénomène, l'intervention de cette unité centrale dans le pilotage de ces cellules est tout à fait indésirable dans la mesure où elle ralentit de façon notable le traitement des autres tâches assignées à cette unité centrale. Dans ce contexte, l'invention a pour but de proposer un agencement de cellules locales de comptage conçu pour fournir une mesure numérique d'une durée caractéristique d'un phénomène sans impliquer d'unité centrale, ou sans requérir une interruption de l'unité centrale éventuellement présente. A cette fin, le circuit électronique de l'invention, par ailleurs conforme à la définition générique qu'en donne le préambule ci-dessus, est essentiellement caractérisé en ce que le réseau comprend une paire de cellules locales formée d'une première et d'une deuxième cellules reliées entre elles, en ce que la première cellule est conçue pour compter des impulsions d'horloge et en mémoriser le nombre, en ce que cette première cellule comprend une première entrée recevant, en fonctionnement, lesdites impulsions d'horloge, une deuxième entrée recevant sélectivement, en fonctionnement, un signal de remise à zéro du nombre d'impulsions d'horloge mémorisé à la fin de la durée caractéristique, et une sortie délivrant, en fonctionnement et en réponse à la réception du signal de remise à zéro, le nombre d'impulsions d'horloge mémorisé à la fin de la durée caractéristique, en ce que la deuxième cellule est conçue pour délivrer ledit signal de remise à zéro en réponse à l'apparition dudit front avant, pour mémoriser le nombre d'impulsions d'horloge transmis par la sortie de la première cellule, et pour fournir sur requête le nombre mémorisé d'impulsions, et en ce que cette deuxième cellule comprend une première entrée connectée pour recevoir ledit signal image, une sortie reliée à la deuxième entrée de la première cellule et délivrant ledit signal de remise à zéro, et une deuxième entrée reliée à la sortie de la première cellule et recueillant ledit nombre d'impulsions d'horloge mémorisé à la fin de la durée caractéristique. Dans le cas où ledit phénomène présente, à chaque occurrence et en tant que durée caractéristique, une période constituée par un intervalle de temps séparant deux fronts avant successifs du signal image, et où ladite paire de cellules est dédiée à la mesure de la période dudit phénomène, il est par exemple possible de prévoir que ladite première cellule incrémente inconditionnellement le nombre d'impulsions d'horloge qu'elle reçoit entre deux fronts avant successifs du signal image. Dans le cas où ledit phénomène présente, à chaque occurrence et en tant que durée caractéristique, une phase active constituée par un intervalle de temps séparant un front avant et le front arrière suivant dudit signal image, et pendant lequel ce signal image atteint un niveau d'amplitude déterminée entre deux fronts avant successifs, et où ladite paire de cellules est dédiée à la mesure de la durée de la phase active dudit phénomène, il est possible de prévoir que ladite première cellule comporte une troisième entrée recevant ledit signal image, et que cette première cellule soit sensible au front arrière de ce signal image et conçue pour incrémenter le nombre d'impulsions d'horloge qu'elle reçoit seulement entre un front avant et le front arrière suivant du signal image. Dans la réalisation la plus complète du circuit de l'invention, ce circuit comprend une première paire de cellules dédiée à la mesure de la période dudit phénomène, et une deuxième paire de cellules dédiée à la mesure de la durée de la phase active dudit phénomène. Grâce à cet agencement, le circuit de l'invention permet la mesure cohérente de la période et de la durée de la phase active d'un signal image à modulation de largeur d'impulsion, encore appelé signal PWM ou signal à rapport cyclique. En d'autres termes, le circuit de l'invention, lorsqu'il comprend deux paires de cellules telles que précédemment définies, permet de fournir, pour une même période d'un signal PWM, à la fois une donnée numérique représentative de la durée de cette période, et une donnée numérique représentative de la durée de la phase active de ce signal. Ainsi, dans le cas où ce circuit électronique comprend également une unité centrale de calcul pour laquelle ces données sont élaborées, cette unité centrale n'interagit avec chaque paire de cellules que pour lire le nombre d'impulsions d'horloge mémorisé dans la deuxième cellule de cette paire. D'autres caractéristiques et avantages de l'invention ressortiront clairement de la description qui en est faite ci-après, à titre indicatif et nullement limitatif, en référence aux 15 dessins annexés, dans lesquels : • la figure 1 est un chronogramme illustrant l'amplitude, représentée en ordonnée, d'un signal à modulation de largeur d'impulsion, en fonction du temps représenté en abscisse ; • la figure 2 est un schéma représentant essentiellement un circuit électronique à 20 deux paires de cellules locales de comptage de temps, conforme à un mode de réalisation particulier de l'invention ; et • la figure 3 est constituée par trois chronogrammes illustrant respectivement en ordonnée, du bas vers le haut et en fonction du temps représenté en abscisse, l'amplitude d'un signal image à modulation de largeur 25 d'impulsion (chronogramme du bas), le contenu des cellules de la paire de cellules du haut de la figure 2 (chronogramme du milieu), et le contenu des cellules de la paire de cellules du bas de la figure 2 (chronogramme du haut). Le signal à modulation de largeur d'impulsion illustré à la figure 1 constitue un exemple privilégié de signal image I auquel le circuit de l'invention est applicable. 30 Les signaux de ce type sont très fréquemment utilisés, notamment pour piloter ou vérifier le fonctionnement de divers composants d'un véhicule automobile, se traduisant par des phénomènes cycliques ou pseudo-cycliques. En particulier, un tel signal image I présente une première durée caractéristique, notée T, appelée période, et constituée par l'intervalle de temps séparant deux fronts 35 avant Fat et Fa2 de ce signal. Un tel signal image I (cf. figure 2) présente par ailleurs une deuxième durée caractéristique, notée Ta, appelée phase active, et constituée par l'intervalle de temps séparant un front avant Fal et un front arrière Fzl de ce signal image I. Le circuit électronique de l'invention, qui comprend un réseau de comptage de temps formé de cellules locales de comptage de temps telles que Cl, C2, C3 et C4, est conçu pour fournir une mesure numérique de l'une au moins des durées caractéristiques T et Ta, sans requérir l'intervention d'une unité centrale de calcul. Dans son mode de réalisation le plus complet, le circuit électronique de l'invention est non seulement conçu pour fournir, sous forme de données numériques, à la fois la durée de la période T et celle de la phase active Ta d'un signal image I à modulation de largeur d'impulsion, mais est en outre conçu pour que ces données numériques soient relatives au même intervalle de temps borné par deux fronts avant successifs Fal et Fa2 de ce signal I. Dans son mode de réalisation le plus complet, ce circuit comprend une première paire de cellules locales de comptage, constituée par les cellules Cl et C2 et dédiée à la mesure de la durée de la période T, et une deuxième paire de cellules locales de comptage, constituée par les cellules C3 et C4 et dédiée à la mesure de la durée de la phase active Ta. Les cellules Cl et C2 de la première paire de cellules sont reliées entre elles. Par ailleurs, la première cellule Cl de cette première paire est conçue pour compter des impulsions d'horloge H1 qu'elle reçoit par exemple à travers un multiplexeur MX1, et pour mémoriser le nombre cumulé d'impulsions d'horloge reçues, ce nombre prenant, à chaque instant t, une valeur notée N1k(t), où k est un indice identifiant le numéro d'ordre de la période T considérée. A cette fin, cette première cellule Cl comprend une première entrée El 1 recevant, en fonctionnement, les impulsions d'horloge H1 à compter. La cellule Cl comprend en outre une deuxième entrée E12 et une sortie S11 dont les fonctions seront détaillées ultérieurement. La deuxième cellule C2 de la première paire de cellules comprend une première entrée E21 connectée pour recevoir, par exemple à travers un multiplexeur MX2, le signal image I, une sortie S21 reliée à la deuxième entrée E12 de la première cellule Cl, et une deuxième entrée E22 reliée à la sortie S11 de la première cellule C1. Cette deuxième cellule C2 est conçue pour délivrer, par sa sortie S21 et sur l'entrée E12 de la cellule Cl, un signal de remise à zéro RAZ1 en réponse à l'apparition du front avant, tel que Fat ou Fa2, de chaque nouvelle période T du signal I. En réponse à la réception du signal de remise à zéro RAZ1, la première cellule Cl délivre en fonctionnement, sur sa sortie S11, une donnée représentative du nombre d'impulsions d'horloge, noté N1k, atteint dans la mémoire de cette cellule Cl par le nombre N1k(t) à l'instant où se termine la période T d'ordre k considérée, c'est-à-dire à l'apparition du front avant Fa2 de la période T suivante d'ordre k+1. De façon simultanée, la première cellule Cl met à zéro le nombre d'impulsions 5 d'horloge N1 k+1(t) mémorisé pour la nouvelle période T d'ordre k+1 annoncée par le nouveau front avant Fa2 du signal I. A réception, sur son entrée E22 et en provenance de la sortie S11 de la cellule Cl, de la donnée représentant le nombre N1k d'impulsions d'horloge en mémoire dans la première cellule Cl à la fin de la période T d'ordre k, la deuxième cellule C2 mémorise ce 10 nombre N1k de manière à pouvoir le fournir, typiquement à une unité centrale de calcul et sur requête, à tout instant choisi par cette unité centrale pour le récupérer. De la même manière, les cellules C3 et C4 de la deuxième paire de cellules sont reliées entre elles. Par ailleurs, la première cellule C3 de cette deuxième paire est conçue pour 15 compter des impulsions d'horloge H2, et pour mémoriser le nombre cumulé d'impulsions d'horloge reçues, ce nombre prenant, à chaque instant t, une valeur notée N2k(t), où k est un indice identifiant le numéro d'ordre de la période T considérée. A cette fin, cette première cellule C3 comprend une première entrée E31 recevant, en fonctionnement, les impulsions d'horloge H2 à compter. 20 La cellule C3 comprend en outre une deuxième entrée E32 et une sortie S31 dont les fonctions sont respectivement comparables à celles de la deuxième entrée E12 et de la sortie S11 de la cellule C1. En revanche, la cellule C3 se distingue de la cellule Cl par le fait qu'elle comporte une troisième entrée, notée E33, et recevant le signal image I par exemple à travers le 25 multiplexeur MX2. La deuxième cellule C4 de la deuxième paire de cellules, qui est équivalente à la cellule C2, comprend une première entrée E41 connectée pour recevoir le signal image I, par exemple à travers le multiplexeur MX2, une sortie S41 reliée à la deuxième entrée E32 de la première cellule C3, et une deuxième entrée E42 reliée à la sortie S31 30 de la première cellule C1. A l'image de la deuxième cellule C2 de la première paire, cette deuxième cellule C4 de la deuxième paire de cellules est conçue pour délivrer, par sa sortie S41 et sur l'entrée E32 de la cellule C3, un signal de remise à zéro RAZ2 en réponse à l'apparition du front avant, tel que Fat ou Fa2, de chaque nouvelle période T du signal I. 35 En réponse à la réception du signal de remise à zéro RAZ2, la première cellule C3 délivre en fonctionnement, sur sa sortie S31, une donnée représentative du nombre d'impulsions d'horloge, noté N2k, atteint dans la mémoire de cette cellule C3 par le nombre N2k(t) à l'instant où se termine la période T d'ordre k considérée, c'est-à-dire à l'apparition du front avant Fa2 de la période T suivante d'ordre k+1. De façon simultanée, la première cellule C3 met à zéro le nombre d'impulsions d'horloge N2k+1(t) mémorisé pour la nouvelle période T d'ordre k+1 annoncée par le 5 nouveau front avant Fa2 du signal!. A réception, sur son entrée E42 et en provenance de la sortie S31 de la cellule C3, de la donnée représentant le nombre N2k d'impulsions d'horloge en mémoire dans la première cellule C3 à la fin de la période T d'ordre k, la deuxième cellule C4 mémorise ce nombre N2k de manière à pouvoir le fournir, typiquement à une unité centrale de calcul et 10 sur requête, à tout instant choisi par cette unité centrale pour le récupérer. Cependant, alors que le nombre N1k est proportionnel à la fréquence des impulsions d'horloge H1 et à la durée de la période T d'ordre k considérée, le nombre N2k est proportionnel à la fréquence des impulsions d'horloge H2 et à la durée de la phase active Ta appartenant à la période T d'ordre k considérée. 15 Cette différence de résultat est obtenue par le fait que, contrairement à la première cellule Cl de la première paire de cellules, la première cellule C3 de la deuxième paire est sensible au niveau d'amplitude du signal image I, qu'elle reçoit sur sa troisième entrée E33. Plus précisément, alors que la cellule Cl incrémente inconditionnellement le 20 nombre d'impulsions d'horloge Ni k(t) qu'elle reçoit entre deux fronts avant successifs Fat et Fa2 du signal image I, la cellule C3 est sensible au front arrière Fzl du signal image I, qui marque un changement d'amplitude de ce signal. La cellule C3 peut ainsi être conçue pour incrémenter le nombre d'impulsions d'horloge N2k(t) qu'elle reçoit non pas pendant toute la durée d'une période T, mais 25 seulement pendant l'intervalle de temps dans lequel le signal I maintient le niveau d'amplitude qui caractérise le front avant Fat, c'est-à-dire seulement entre le front avant Fat et le front arrière suivant Fzl du signal image I, c'est-à-dire encore seulement pendant la durée de la phase active Ta. Les deux chronogrammes supérieurs de la figure 3 ont été établis pour un 30 agencement de cellules dans lequel les cellules C2 et C4 remettent elles-mêmes à jour les nombres qu'elles contiennent à l'apparition d'un nouveau front avant, tel que Fat ou Fa2, du signal image I. Plus précisément, le chronogramme du milieu de la figure 3 montre que, à l'apparition du front avant Fat qui marque le début de la période T d'ordre k, le 35 nombre N1k-2 stocké dans la cellule C2 et représentatif de la durée de la période T d'ordre k-2 est remplacé par le nombre N1 k-1 représenté par la valeur maximale du nombre N1 k-1(t) d'impulsions d'horloge H1 comptées par la cellule Cl pendant la période T d'ordre k-1, le nombre Ni k-1 étant donc représentatif de la durée de cette période T d'ordre k-1. Au même instant, c'est-à-dire à l'apparition du front Fal, le nombre d'impulsions mémorisé dans la cellule Cl est remis à zéro et sa valeur N1k(t) est incrémentée tout au long de la période T d'ordre k, jusqu'à atteindre, à l'apparition du nouveau front avant Fa2, la valeur N1k qui est alors stockée dans la cellule C2. De même, le chronogramme du haut de la figure 3 montre que, à l'apparition du front avant Fal qui marque le début de la période T d'ordre k, le nombre N2k-2 stocké dans la cellule C4 et représentatif de la durée de la phase active Ta appartenant à la période T d'ordre k-2 est remplacé par le nombre N2k-1 représenté par la valeur maximale du nombre N2k-1(t) d'impulsions d'horloge H2 comptées par la cellule C3 pendant la période T d'ordre k-1. Cependant, comme la cellule C3 ne compte les impulsions d'horloge H2 que pendant la phase active Ta de chaque période T, le nombre N2k-1 représente la durée de 15 la phase active Ta appartenant à cette période T d'ordre k-1. Au même instant, c'est-à-dire à l'apparition du front Fat, le nombre d'impulsions mémorisé dans la cellule C3 est remis à zéro et sa valeur N2k(t) est incrémentée tout au long de la phase active Ta appartenant à la période T d'ordre k, jusqu'à atteindre, à l'apparition du front arrière Fz1, la valeur N2k qui sera stockée dans la cellule C4 à 20 l'apparition du nouveau front avant Fa2. Comme le montrent les deux chronogrammes supérieurs de la figure 3, l'invention permet ainsi de disposer simultanément de données telles que N1k-1 et N2k-1, ou N1k et N2k, qui représentent respectivement la durée d'une période T du signal image I et la durée de la phase active Ta appartenant à cette même période. 25 Dans le cas où le circuit électronique de l'invention comprend, en plus des cellules Cl à C4 précédemment décrites, une unité centrale de calcul dont le fonctionnement requiert la fourniture de données représentatives de la durée T d'une période et / ou de la durée de la phase active Ta correspondante, l'invention permet donc à cette unité centrale de n'interagir avec la paire de cellules appropriée que pour lire le 30 nombre d'impulsions d'horloge N1k ou N2k mémorisé dans la deuxième cellule C2 ou C4 de cette paire. Comme le comprendra aisément l'homme du métier à la lecture de la description ci-dessus, les fréquences des horloges H1 et H2 seront choisies d'autant plus élevées que la précision requise sera importante, et pourront être identiques. REVENDICATIONS1. Circuit électronique programmé pour fournir une mesure numérique d'une durée (T, Ta) caractéristique d'un phénomène se manifestant par des occurrences successives, l'apparition de chaque occurrence étant définie par le front avant (Fal) d'un signal image (I) représentatif de ce phénomène, et ce circuit comprenant un réseau de comptage de temps incluant des cellules locales de comptage (Cl - C4), caractérisé en ce que: • le réseau comprend une paire (Cl, C2 ; C3, C4) de cellules locales formée d'une première (Cl ; C3) et d'une deuxième (C2 ; C4) cellules reliées entre elles, • la première cellule (Cl ; C3) est conçue pour compter des impulsions d'horloge (H1 ; H2) et en mémoriser le nombre (N1 k(t) ; N2k(t)), • cette première cellule (Cl ; C3) comprend une première entrée (El 1 ; E31) recevant, en fonctionnement, lesdites impulsions d'horloge (H1 ; H2), une deuxième entrée (E12 ; E32) recevant sélectivement, en fonctionnement, un signal (RAZ1 ; RAZ2) de remise à zéro du nombre d'impulsions d'horloge (N1k ; N2k) mémorisé à la fin de la durée caractéristique, et une sortie (S11 ; S31) délivrant, en fonctionnement et en réponse à la réception du signal de remise à zéro (RAZ1 ; RAZ2), le nombre d'impulsions d'horloge (N1k ; N2k) mémorisé à la fin de la durée caractéristique, • la deuxième cellule (C2 ; C4) est conçue pour délivrer ledit signal de remise à zéro (RAZ1 ; RAZ2) en réponse à l'apparition dudit front avant (Fa1), pour mémoriser le nombre d'impulsions d'horloge (N1 k N2k) transmis par la sortie (S11 ; S31) de la première cellule (Cl ; C3), et pour fournir sur requête le nombre mémorisé d'impulsions (N1k ; N2k), • cette deuxième cellule (C2 ; C4) comprend une première entrée (E21 ; E41) connectée pour recevoir ledit signal image (I), une sortie (S21; S41) reliée à la deuxième entrée (E12 ; E32) de la première cellule (Cl; C3) et délivrant ledit signal de remise à zéro (RAZ1 ; RAZ2), et une deuxième entrée (E22 ; E42) reliée à la sortie (S11 ; S31) de la première cellule (Cl ; C3) et recueillant ledit nombre d'impulsions d'horloge (N1k ; N2k) mémorisé à la fin de la durée caractéristique (T, Ta). 2. Circuit électronique suivant la revendication 1, caractérisé en ce que ledit phénomène présente, à chaque occurrence et en tant que durée caractéristique, une période (T) constituée par un intervalle de temps séparant deux fronts avant successifs (Fa1, Fa2) du signal image (I), en ce que ladite première cellule (Cl) incrémente inconditionnellement le nombre d'impulsions d'horloge (N1k(t)) qu'elle reçoitentre deux fronts avant successifs (Fal, Fa2) du signal image (I), et en ce que ladite paire de cellules (Cl, C2) est dédiée à la mesure de la période (T) dudit phénomène. 3. Circuit électronique suivant la revendication 1, caractérisé en ce que ledit phénomène présente, à chaque occurrence et en tant que durée caractéristique, une phase active (Ta) constituée par un intervalle de temps séparant un front avant (Fal) et un front arrière (Fzl) dudit signal image (I), et pendant lequel ce signal image (I) atteint un niveau d'amplitude déterminée entre deux fronts avant successifs (Fal, Fa2), en ce que ladite première cellule (C3) comporte une troisième entrée (E33) recevant ledit signal image (I), en ce que cette première cellule (C3) est sensible au front arrière (Fzl) de ce signal image et conçue pour incrémenter le nombre d'impulsions d'horloge (N2k(t)) qu'elle reçoit seulement entre un front avant (Fal) et le front arrière suivant (Fzl) du signal image (I), et en ce que ladite paire de cellules (C3, C4) est dédiée à la mesure de la durée de la phase active (Ta) dudit phénomène. 4. Circuit électronique suivant les revendications 2 et 3, caractérisé en ce qu'il comprend une première paire de cellules (Cl, C2) dédiée à la mesure de la période (T) dudit phénomène, et une deuxième paire de cellules (C3, C4) dédiée à la mesure de la durée de la phase active (Ta) dudit phénomène. 5. Circuit électronique suivant l'une quelconque des revendications précédentes, caractérisé en ce qu'il comprend en outre une unité centrale de calcul et en ce que cette unité centrale interagit avec chaque paire de cellules (Cl, C2 ; C3, C4) seulement pour lire le nombre d'impulsions d'horloge (N1k ; N2k) mémorisé dans la deuxième cellule (C2 ; C4) de cette paire.