FR3107983A1 - Dispositif de surveillance d'un circuit digital - Google Patents
Dispositif de surveillance d'un circuit digital Download PDFInfo
- Publication number
- FR3107983A1 FR3107983A1 FR2002212A FR2002212A FR3107983A1 FR 3107983 A1 FR3107983 A1 FR 3107983A1 FR 2002212 A FR2002212 A FR 2002212A FR 2002212 A FR2002212 A FR 2002212A FR 3107983 A1 FR3107983 A1 FR 3107983A1
- Authority
- FR
- France
- Prior art keywords
- state
- circuit
- signal
- output
- transition
- 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
Links
- 238000012806 monitoring device Methods 0.000 title description 25
- 230000007704 transition Effects 0.000 claims abstract description 127
- 238000003860 storage Methods 0.000 claims abstract description 61
- 230000000630 rising effect Effects 0.000 claims description 27
- 230000010355 oscillation Effects 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 3
- 230000015654 memory Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 claims description 2
- 210000001061 forehead Anatomy 0.000 claims 1
- 238000012544 monitoring process Methods 0.000 abstract description 3
- 230000001902 propagating effect Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000001360 synchronised effect Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 6
- 230000007257 malfunction Effects 0.000 description 6
- 230000001934 delay Effects 0.000 description 5
- 230000032683 aging Effects 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 239000000470 constituent Substances 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000006386 memory function Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/023—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31702—Testing digital circuits including elements other than semiconductor transistors, e.g. biochips, nanofabrics, mems, chips with magnetic elements
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/30—Marginal testing, e.g. by varying supply voltage
- G01R31/3016—Delay or race condition test, e.g. race hazard test
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31725—Timing aspects, e.g. clock distribution, skew, propagation delay
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31725—Timing aspects, e.g. clock distribution, skew, propagation delay
- G01R31/31726—Synchronization, e.g. of test, clock or strobe signals; Signals in different clock domains; Generation of Vernier signals; Comparison and adjustment of the signals
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3177—Testing of logic operation, e.g. by logic analysers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/02—Generators characterised by the type of circuit or by the means used for producing pulses
- H03K3/027—Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
- H03K3/03—Astable circuits
- H03K3/0315—Ring oscillators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C7/222—Clock generating, synchronizing or distributing circuits within memory device
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Chemical & Material Sciences (AREA)
- Nanotechnology (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
Dispositif de surveillance d'un circuit digital La présente description concerne un dispositif (1) comprenant : un oscillateur en anneau (3) comprenant une chaine de composants logiques (C1, C2, C3, C4, C5) ; un ensemble d'éléments de mémorisation (M1, M2, M2, M4, M5) chacun associé à un composant logique différent et configuré pour mémoriser un état d'une sortie (O1, O2, O3, O4 O5) dudit composant auquel ledit élément de mémorisation est associé ; un premier circuit (7) configuré pour compter des transitions d'états d'une sortie (O4 ; O1) d'un composant logique donné (C1 ; C4) de ladite chaîne ; un deuxième circuit (5) configuré pour synchroniser chaque mémorisation avec un signal d'horloge (clk) ; et un troisième circuit (9) configuré pour déterminer un nombre de composants logiques traversés par une transition d'états entre deux fronts du signal d'horloge, à partir du nombre compté de transitions d'états et des états mémorisés desdites sorties. Figure pour l'abrégé : Fig. 1
Description
La présente description concerne de façon générale les circuits électroniques, et plus particulièrement les circuits électroniques intégrés. La présente description concerne plus particulièrement un dispositif de surveillance d'un circuit digital.
Les circuits digitaux, ou séquentiels, connus comprennent des éléments de mémorisation, ou de séquencement, généralement des bascules synchrones, synchronisés avec un signal d'horloge. Ces circuits digitaux comprennent également des chemins combinatoires constitués de plusieurs composants logiques ou combinatoires, c’est-à-dire des composants dépourvus de fonction de mémorisation. Chaque chemin combinatoire relie la sortie d'une bascule à l'entrée d'une autre bascule. Un signal d'horloge contrôle le cadencement, ou séquencement, des mémorisations par les bascules.
Pour qu'un tel circuit digital fonctionne de manière attendue, un temps de propagation ou de transmission d'un signal dans chaque chemin combinatoire du circuit doit être inférieur à une durée prédéterminée minorée d'une marge temporelle. La durée prédéterminée correspond, selon le chemin combinatoire considéré, à la durée d'une période, ou cycle, du signal d'horloge ou à la durée de plusieurs périodes du signal d'horloge. La marge temporelle est typiquement égale à la somme d'une durée thdd'établissement de signal et d'une durée tsude maintien de signal. Ces durées thdet tsusont déterminées de sorte qu'une mémorisation par une bascule s'effectue de manière attendue si un signal fourni à une entrée de donnée de bascule est un état stable pendant toute la durée tsuavant un front du signal d'horloge provoquant la mémorisation, et pendant toute la durée thdsuivant ce front.
Les chemins combinatoires d'un circuit digital ayant les temps de propagation les plus longs sont généralement appelés chemins critiques ("critical path" en anglais).
En raison des dispersions de fabrication d'un circuit digital, du vieillissement du circuit digital et/ou des conditions de fonctionnement du circuit digital, telles que par exemple une température du circuit et/ou des variations de tension d'alimentation du circuit, les temps de propagation dans les chemins combinatoires du circuit peuvent varier. En particulier, lorsque le temps de propagation d'un signal dans un des chemins combinatoires du circuit, généralement un chemin critique, augmente, ce temps de propagation peut excéder la durée prédéterminée minorée par la marge temporelle, ce qui conduit à un disfonctionnement du circuit. Un disfonctionnement du circuit peut également résulter d'une diminution du temps de propagation d'un signal dans un des chemins combinatoires du circuit.
Pour prévenir un tel disfonctionnement, un ou plusieurs dispositifs de surveillance ("monitoring devices" en anglais) du circuit digital peuvent être prévus, le circuit digital et les dispositifs de surveillance étant de préférence mis en œuvre dans même circuit intégré. Ces dispositifs de surveillance de dérive temporelle permettent d'obtenir des informations sur l'évolution des délais de propagation d'une transition, ou signal, à travers des composants logiques. Ces informations sont ensuite utilisées pour déterminer ou évaluer si les temps de propagation dans les chemins combinatoires du circuit surveillé, en particulier dans les chemins critiques, varient, par exemple si le temps de propagation dans un des chemins combinatoires du circuit est susceptible d'être plus long que la durée prédéterminée du chemin combinatoire considéré, minorée par la marge temporelle. Lorsque c'est le cas, des compensations peuvent être mises en œuvre pour éviter le disfonctionnement du circuit, par exemple en ajustant la fréquence du signal d'horloge, la tension d'alimentation du circuit intégré et/ou des tension de polarisation de transistors du circuit intégré.
Il existe un besoin de pallier tout ou partie des inconvénients des dispositifs de surveillance connus décrits ci-dessus.
Un mode de réalisation pallie tout ou partie des inconvénients des dispositifs de surveillance connus décrits ci-dessus.
Un mode de réalisation prévoit un dispositif de surveillance sensible à des variations de fréquence du signal d'horloge du circuit digital qu'il surveille.
Un mode de réalisation prévoit un dispositif de surveillance adapté à fournir des informations sur l'évolution des délais de propagation de composants logiques en un cycle d'horloge.
Un mode de réalisation prévoit un dispositif de surveillance adapté à fournir des informations sur l'évolution des délais de propagation de composants logiques pendant un nombre quelconque de cycles du signal d'horloge.
Un mode de réalisation prévoir un dispositif de surveillance adapté à fournir des informations sur l'évolution des délais de propagation de composants logiques qui soient plus précises que celles fournies par des dispositifs de surveillance connus tels que décrits ci-dessus.
Ainsi, un mode de réalisation prévoit un dispositif comprenant :
un oscillateur en anneau comprenant une chaine de composants logiques ;
un ensemble d'éléments de mémorisation chacun associé à un composant logique différent de ladite chaine et configuré pour mémoriser un état d'une sortie dudit composant logique auquel ledit élément de mémorisation est associé ;
un premier circuit configuré pour compter des transitions d'états d'une sortie d'un composant logique donné de ladite chaîne ;
un deuxième circuit configuré pour synchroniser chaque mémorisation avec un signal d'horloge ; et
un troisième circuit configuré pour déterminer un nombre de composants logiques de ladite chaîne traversés par une transition d'états entre deux fronts du signal d'horloge, à partir du nombre compté de transitions d'états et des états mémorisés desdites sorties.
un oscillateur en anneau comprenant une chaine de composants logiques ;
un ensemble d'éléments de mémorisation chacun associé à un composant logique différent de ladite chaine et configuré pour mémoriser un état d'une sortie dudit composant logique auquel ledit élément de mémorisation est associé ;
un premier circuit configuré pour compter des transitions d'états d'une sortie d'un composant logique donné de ladite chaîne ;
un deuxième circuit configuré pour synchroniser chaque mémorisation avec un signal d'horloge ; et
un troisième circuit configuré pour déterminer un nombre de composants logiques de ladite chaîne traversés par une transition d'états entre deux fronts du signal d'horloge, à partir du nombre compté de transitions d'états et des états mémorisés desdites sorties.
Selon un mode de réalisation, le troisième circuit est configuré pour déterminer un nombre de fois où ladite transition d'états parcourt entièrement ladite chaîne entre lesdits deux fronts, à partir du nombre compté de transitions d'états.
Selon un mode de réalisation, le troisième circuit est configuré pour déterminer une position de ladite transition d'états dans ladite chaîne lors d'un front du signal d'horloge, à partir des états mémorisés desdites sorties lors dudit front.
Selon un mode de réalisation, le troisième circuit est configuré pour déterminer le nombre de composants logiques traversés par ladite transition d'états entre lesdits deux fronts du signal d'horloge à partir du nombre de fois où ladite transition parcours entièrement l'oscillateur entre lesdits deux fronts, de la position de la transition dans ladite chaîne lors d'un dernier desdits deux fronts et, éventuellement, de la position de la transition dans ladite chaîne lors d'un premier desdits deux fronts.
Selon un mode de réalisation, chaque composant logique de ladite chaîne est associé à un élément de mémorisation dudit ensemble.
Selon un mode de réalisation, les éléments de mémorisation sont des verrous.
Selon un mode de réalisation, chacun des verrous a une entrée reliée, de préférence connectée, à la sortie du composant logique auquel ledit verrou est associé.
Selon un mode de réalisation, le premier circuit comprend une entrée connectée à une sortie du verrou dont l'entrée est reliée, de préférence connectée, à la sortie dudit composant logique donné.
Selon un mode de réalisation, le dispositif comprend un autre ensemble d'éléments de mémorisation chacun associé à un composant logique différent de ladite chaîne et configuré pour mémoriser un état de la sortie dudit composant logique, ledit ensemble et ledit autre ensemble étant de préférence configurés pour que chaque composant logique associé à un élément de mémorisation dudit ensemble soit associé à un élément de mémorisation dudit autre ensemble.
Selon un mode de réalisation, le deuxième circuit est configuré pour que les verrous dudit ensemble soient à l'état transparent quand les verrous dudit autre ensemble sont à l'état verrouillé, et pour que les verrous dudit ensemble soient à l'état verrouillé quand les verrous dudit autre ensemble sont à l'état transparent, le deuxième circuit étant de préférence configuré pour que les verrous commutent entre les états verrouillés et transparents à chaque changement de cycle d'une succession de cycles du signal d'horloge.
Selon un mode de réalisation, le premier circuit est configuré pour compter les transitions d'un premier état vers un deuxième état, et du deuxième état vers le premier état.
Selon un mode de réalisation, le deuxième circuit est configuré pour synchroniser chaque mémorisation avec un front actif, de préférence montant, du signal d'horloge.
Selon un mode de réalisation, l'un des composants logiques de ladite chaine, de préférence ledit composant logique donné, est configuré pour empêcher une propagation d'une oscillation dans l'oscillateur lorsqu'un signal de contrôle est dans un premier état, et pour autoriser la propagation de l'oscillation lorsque le signal de contrôle est dans un deuxième état, le deuxième circuit étant de préférence configuré pour fournir le signal de contrôle au deuxième état entre lesdits deux fronts.
Un mode de réalisation prévoit un circuit intégré comprenant un dispositif tel que décrit et un premier circuit digital configuré pour être séquencé par ledit signal d'horloge.
Un mode de réalisation prévoit un procédé comprenant les étapes consistant à :
- compter au moyen d'un premier circuit des transitions d'états d'une sortie d'un composant logique donné d'un oscillateur en anneau comprenant une chaine de composants logiques ;
- mémoriser des états des sorties de composants logiques de ladite chaine au moyen d'un ensemble d'éléments de mémorisation chacun associé à un composant logique différent ;
- synchroniser au moyen d'un deuxième circuit lesdites mémorisations avec un signal d'horloge ; et
- déterminer au moyen d'un troisième circuit un nombre de composants logiques traversés par une transition d'états entre deux fronts du signal d'horloge, à partir du nombre compté de transitions d'états et des états mémorisés desdites sorties.
- compter au moyen d'un premier circuit des transitions d'états d'une sortie d'un composant logique donné d'un oscillateur en anneau comprenant une chaine de composants logiques ;
- mémoriser des états des sorties de composants logiques de ladite chaine au moyen d'un ensemble d'éléments de mémorisation chacun associé à un composant logique différent ;
- synchroniser au moyen d'un deuxième circuit lesdites mémorisations avec un signal d'horloge ; et
- déterminer au moyen d'un troisième circuit un nombre de composants logiques traversés par une transition d'états entre deux fronts du signal d'horloge, à partir du nombre compté de transitions d'états et des états mémorisés desdites sorties.
Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles:
De mêmes éléments ont été désignés par de mêmes références dans les différentes figures. En particulier, les éléments structurels et/ou fonctionnels communs aux différents modes de réalisation peuvent présenter les mêmes références et peuvent disposer de propriétés structurelles, dimensionnelles et matérielles identiques.
Par souci de clarté, seuls les étapes et éléments utiles à la compréhension des modes de réalisation décrits ont été représentés et sont détaillés. En particulier, les utilisations connues des informations sur des temps de propagation de composants logiques, fournies par un dispositif de surveillance, n'ont pas été détaillées, les dispositifs décrits fournissant des informations compatibles avec ces utilisations connues, et en particulier avec les compensations connues pouvant être mises en œuvre à partir de ces informations pour éviter un disfonctionnement d'un circuit digital surveillé. Par ailleurs, les circuits digitaux connus qui peuvent faire l'objet d'une surveillance par un dispositif de surveillance n'ont pas été décrits, les dispositifs de surveillance décrits étant compatibles avec ces circuits digitaux connus.
Sauf précision contraire, lorsque l'on fait référence à deux éléments connectés entre eux, cela signifie directement connectés sans éléments intermédiaires autres que des conducteurs, et lorsque l'on fait référence à deux éléments reliés (en anglais "coupled") entre eux, cela signifie que ces deux éléments peuvent être connectés ou être reliés par l'intermédiaire d'un ou plusieurs autres éléments.
Dans la description qui suit, lorsque l'on fait référence à des qualificatifs de position absolue, tels que les termes "avant", "arrière", "haut", "bas", "gauche", "droite", etc., ou relative, tels que les termes "dessus", "dessous", "supérieur", "inférieur", etc., ou à des qualificatifs d'orientation, tels que les termes "horizontal", "vertical", etc., il est fait référence sauf précision contraire à l'orientation des figures.
Sauf précision contraire, les expressions "environ", "approximativement", "sensiblement", et "de l'ordre de" signifient à 10% près, de préférence à 5% près.
La figure 1 représente, de manière très schématique, un mode de réalisation d'un dispositif de surveillance 1.
Le dispositif 1 comprend un oscillateur en anneau 3. L'oscillateur 3 comprend une chaîne de N composants logiques Ci (C1, C2, C3, C4, C5), avec i entier allant de 1 à N. Les composants Ci de la chaîne sont connectés en série les uns à la suite des autres, le dernier composant de la chaîne, à savoir le composant C5 dans l'exemple de la figure 1, ayant une sortie, O5 dans l'exemple de la figure 1, connectée à une entrée du premier composant C1 de la chaîne. Dit autrement, la chaîne est rebouclée, ou fermée, sur elle-même. Le nombre N de composants Ci et le type de chaque composant Ci sont déterminés de manière que, lorsque l'oscillateur 3 est en fonctionnement, ou actif, une sortie Oi de chaque composant Ci oscille entre deux états haut et bas, à une fréquence déterminée par le temps de propagation ou de transmission d'un signal à travers les composants Ci.
A titre d'exemple, tous les composants Ci de la chaîne sont identiques comme c'est le cas en figure 1. Dans d'autres exemples, la chaîne comprend au moins deux composants Ci différents, par exemple des inverseurs, des portes ET ("AND gates" en anglais), des portes OU ("OR gates" en anglais), des portes NON ET ("NAND gates" en anglais), des portes OU EXCLUSIF ("XOR gates" en anglais), des portes NON OU ("NOR gates" en anglais), etc. La prévision de plusieurs composants différents peut permettre d'obtenir des informations sur l'évolution des temps de transmission de composants différents dont les temps de propagations évoluent différemment suite à des dispersions de fabrication, au vieillissement et/ou à des modifications de conditions de fonctionnement.
Dans l'exemple de la figure 1, les composants Ci sont tous des inverseurs. Dans ce cas, la chaîne comporte un nombre N impair d'inverseur. Dans l'exemple de la figure 1, N est égal à 5.
Bien que dans l'exemple de la figure 1, le nombre N de composants Ci soit égal à 5, en pratique l'oscillateur 3 peut comprendre un nombre N quelconque supérieur à deux de composants Ci, N étant par exemple supérieur à 10, de préférence supérieur à 50, voire supérieur à 100.
Le dispositif 1 comprend en outre un ensemble d'éléments de mémorisation Mj, avec j entier allant de 1 à K, K étant inférieur ou égal à N. Par élément de mémorisation Mj on désigne ici un élément de mémorisation Mj synchrone avec un signal de synchronisation. Un tel élément de mémorisation synchrone Mj est configuré pour mémoriser l'état haut ou bas de son entrée de donnée de manière synchrone avec un front ou un niveau du signal de synchronisation, cet état mémorisé étant disponible sur la sortie M[j] de l'élément de mémorisation, et maintenu à une valeur stable pendant toute la durée de la mémorisation. Les bascules ("flip flop" en anglais) et les verrous ("latch" en anglais) sont des exemples d'éléments de mémorisation synchrone.
De préférence, les éléments de mémorisation Mj sont identiques les uns aux autres. En outre, les mémorisations par les éléments Mj se font simultanément dans tous les éléments Mj, de manière synchrone avec un signal sync.
Chaque élément Mj est associé à un composant logique Ci différent de l'oscillateur 3. Chaque élément Mj est configuré pour mémoriser l'état haut ou bas de la sortie Oi du composant logique Mi auquel il est associé, et pour fournir l'état mémorisé sur la sortie M[j].
Selon un mode de réalisation, comme cela est représenté en figure 1, le nombre K d'éléments Mj est égal au nombre N de composants logiques Ci. Dit autrement, chacun des composants Ci est associé à un élément Mj différent. Dans l'exemple de la figure 1, les composants C1, C2, C3, C4 et C5 sont associés aux éléments respectifs M1, M2, M3, M4 et M5.
Le dispositif 1 comprend un circuit 5 configuré pour fournir le signal sync à partir d'un signal d'horloge clk. Plus particulièrement, le circuit 5 est configuré pour fournir un signal sync tel que chaque mémorisation dans les éléments Mj soit synchrone avec un front du signal clk, de préférence un front actif du signal clk, par exemple un front montant du signal clk. Dit autrement, le circuit 5 est configuré pour synchroniser chaque mémorisation dans les éléments Mj avec le signal clk.
Le signal clk est de préférence le signal d'horloge qui est fourni à un circuit digital (non représenté) que le dispositif 1 surveille, les mémorisations dans les bascules du circuit digital sous surveillance étant mises en oeuvre lors des fronts actifs du signal d'horloge, par exemple les fronts montants du signal clk.
Selon un mode de réalisation, les éléments Mj sont des verrous. Lorsque le signal sync est dans un premier état, par exemple l'état bas, chaque élément Mj est dit transparent et chaque changement d'état de son entrée de donnée est recopiée sur sa sortie. Lorsque le signal sync est dans un deuxième état, par exemple l'état haut, chaque élément Mj est dit verrouillé et l'état de sa sortie est maintenu malgré d'éventuels changements d'états de son entrée de donnée. L'état de l'entrée de donnée du verrou est mémorisé au moment où le signal sync commute du premier état au deuxième état, la valeur de la sortie M[j] du verrou étant représentative de l'état mémorisé et cette valeur de sortie M[j] est maintenue tant que le signal sync est au deuxième état.
Le dispositif 1 comprend un circuit 7 configuré pour compter des transitions d'états d'une sortie Oi d'un composant logique Ci donné de l'oscillateur 3. Dit autrement, le circuit 7 est configuré pour compter des transitions de l'état haut vers l'état bas de la sortie Oi et/ou des transitions de l'état bas vers l'état haut de la sortie Oi. De préférence, le circuit 7 est configuré pour compter des transitions de l'état haut vers l'état bas et des transitions de l'état bas vers l'état haut de la sortie Oi. Le circuit 7 comprend une entrée reliée ou connectée à cette sortie Oi. Le circuit 7 fournit un signal de sortie c-out représentatif d'un nombre de transitions comptées.
Dans cet exemple, le circuit 7 est configuré pour compter les transitions de la sortie O4 du composant C4. En outre, dans cet exemple, le circuit 7 a une entrée connectée à la sortie O4 du composant logique C4.
Le dispositif 1 comprend un circuit 9. Le circuit 9 est configuré pour déterminer un nombre de composants logiques Ci de l'oscillateur 3 traversés par une transition d'états entre deux fronts du signal d'horloge clk. Pour cela, le circuit 9 reçoit le signal c-out représentatif du nombre de transitions d'états comptées par le circuit 7. Le circuit 9 reçoit en outre les sorties M[j] des éléments de mémorisation Mj, c’est-à-dire les états mémorisés des sorties Oi des composants logiques Ci. Autrement dit, le circuit 9 reçoit un signal binaire M[1..K] sur K bits, correspondant à la concaténation des K sorties M[j] des éléments de mémorisation Mj. A titre d'exemple, en figure 1 où K est égal à 5, le signal M[1..5] comprend cinq bits égaux respectivement à M[1], M[2], M[3], M[4] et M[5].
Le circuit 9 est configuré pour déterminer un nombre de fois où une transition d'états a parcouru entièrement la chaine de composants Ci de l'oscillateur 3, à partir du signal c-out et du nombre de transitions d'états que ce signal c-out représente. A titre d'exemple, le signal c-out est représentatif d'un premier nombre n1 lors du premier des deux fronts, et d'un deuxième nombre n2 lors du dernier des deux fronts, indiquant qu'il y a eu n2-n1-1 passages de cette transition au niveau de la sortie O4 entre les deux fronts. Dit autrement, en considérant que les composants C5 et C4 sont respectivement les premier et dernier composants de la chaine de composants Ci, la transition a parcouru n2-n1-1 fois la chaine des composants C5, C1, C2, C3, C4 pris dans cet ordre.
En outre, le circuit 9 est configuré pour déterminer une position de cette transition d'états dans la chaîne de l'oscillateur 3 lors d'un front du signal d'horloge correspondant à une mémorisation dans les éléments Mj, à partir du signal M[1..5] représentatif des états des sorties Oi mémorisés lors de ce front. A titre d'exemple, en figure 1 où les composants Ci sont tous des inverseurs, après un front du signal clk provoquant un mémorisation dans les éléments Mj, si le signal M[1..5] est égal à "10010", cela signifie qu'au moment de cette mémorisation, le composant C3 avait son entrée au même état, par exemple l'état bas, que sa sortie O3, et donc que la transition, ou oscillation, se propageant dans l'oscillateur 3 était située au niveau de l'entrée du composant C3, ou, dit autrement, au niveau de la sortie O2 du composant C2.
Plus particulièrement, à partir des signaux c-out et M[1..5], le circuit 9 est en mesure de déterminer la position d'une transition lors d'un premier de deux fronts du signal clk, le nombre de tours complets de l'oscillateur 3 parcourus par la transition entre ces deux fronts du signal clk, et la position de la transition lors du dernier de ces deux fronts du signal clk. Le circuit 9 est en outre configuré pour déterminer à partir des informations ci-dessus, quels sont les composants Ci qui ont été traversés par la transition entre ces deux fronts du signal clk, et combien de fois chacun de ces composants a été traversé par la transition entre ces deux fronts du signal clk. Dit autrement, le circuit 9 est en mesure de déterminer le nombre de composants traversés par la transition entre ces deux fronts du signal clk.
Selon un mode de réalisation, les deux fronts du signal d'horloge clk correspondent chacun à une mémorisation dans les éléments Mj. Dans ce mode de réalisation, la position de la transition lors du premier des deux fronts est par exemple déterminée à partir du signal M[1..K], et plus particulièrement à partir de la valeur du signal M[1..K] mémorisée à partir de ce premier front. C'est par exemple le cas en figure 1.
Selon un autre mode de réalisation, comme cela sera par exemple décrit plus en détail avec la figure 4, l'oscillateur 3 est sous le contrôle d'un signal de commande, et est configuré pour qu'aucune oscillation ne se propage dans l'oscillateur 3 quand le signal de commande est dans un premier état, et pour qu'une oscillation se propage dans l'oscillateur 3 lorsque le signal de commande est dans deuxième état. Dans un tel mode de réalisation, le passage du signal de commande de son premier état à son deuxième état revient à provoquer une transition d'états sur une sortie Oi d'un composant Ci donné, qui se propage ensuite dans l'oscillateur 3 provoquant l'oscillation des sorties Oi. Ainsi, en prévoyant que le signal de commande passe du premier état au deuxième lors d'un front du signal clk, la position de la transition lors de ce premier front est connue, même si ce front ne correspond pas nécessairement à une mémorisation par les éléments Mj.
La figure 2 représente des chronogrammes illustrant l'évolution de signaux du dispositif de la figure 1 selon un mode de mise en œuvre. Plus particulièrement, la figure 2 illustre l'évolution des signaux clk, sync, M[1..K] et c-out. En figure 2, on considère à titre d'exemple que :
le nombre N de composants Ci est égal à 5 ;
le nombre K d'éléments de mémorisation Mj est égal à 5 ;
les composants Ci sont tous des inverseurs ;
les composants Mj sont tous des verrous, configurés être transparents quand le signal sync est à l'état haut, et verrouillés quand le signal sync est à l'état bas ;
le circuit 7 est configuré pour compter toutes les transitions d'états sur la sortie O4 du composant C4 ; et
le circuit 5 est configuré pour commuter l'état du signal sync à chaque front actif, ici les fronts montants, du signal clk.
le nombre N de composants Ci est égal à 5 ;
le nombre K d'éléments de mémorisation Mj est égal à 5 ;
les composants Ci sont tous des inverseurs ;
les composants Mj sont tous des verrous, configurés être transparents quand le signal sync est à l'état haut, et verrouillés quand le signal sync est à l'état bas ;
le circuit 7 est configuré pour compter toutes les transitions d'états sur la sortie O4 du composant C4 ; et
le circuit 5 est configuré pour commuter l'état du signal sync à chaque front actif, ici les fronts montants, du signal clk.
A un instant t0 de début des chronogrammes, le signal clk est à l'état bas, le signal sync est à l'état haut, le signal M[1..5] évolue avec les sorties Oi du fait que les verrous Mj sont transparents, et le signal c-out indique que 10 transitions ont été comptées sur la sortie O4.
A un instant t1 suivant, correspond à un front montant du signal clk, le signal sync est commuté de son état haut à son état bas. Les verrous Mj commutent alors à l'état verrouillé et l'état des sorties Oi à l'instant t1 est mémorisé, la valeur ou l'état du signal M[1..5] à partir de l'instant t1 étant représentative de l'état mémorisé des sorties Oi à l'instant t1. Dans cet exemple, à partir de l'instant t1, le signal M[1..5] a la valeur "01101", ce qui indique que, à l'instant t1, la transition se propageant dans l'oscillateur 3 se situe au niveau de la sortie O2 du composant C2. Depuis l'instant t1 jusqu'au prochain incrément de la valeur du signal c-out (instant t2 postérieur à l'instant t1 - transition sur la sortie O4), la transition traverse les composants C3 et C4 dans cet ordre.
A l'instant t1, le signal c-out indique que 11 transitions ont été comptées. A titre d'exemple, la valeur du signal c-out à l'instant t1 est mémorisée par le circuit 9.
A un instant t3 postérieur à l'instant t2 et correspondant au front montant suivant du signal clk, le signal sync est commuté à l'état haut et les verrous Mj commutent alors à l'état transparent. La valeur du signal M[1..5] à partir de l'instant t3 n'est alors plus représentative de l'état des sorties Oi à l'instant t1.
A un instant t4 suivant, correspondant au front montant suivant du signal clk, le signal est commuté à son état bas. Les verrous Mj commutent alors à l'état verrouillé et l'état des sorties Oi à l'instant t4 est mémorisé, la valeur ou l'état du signal M[1..5] à partir de l'instant t4 étant représentative de l'état mémorisé des sorties Oi à l'instant t4. Dans cet exemple, à partir de l'instant t4, le signal M[1..5] a la valeur "01001", ce qui indique que, à l'instant t4, la transition se propageant dans l'oscillateur 3 se situe au niveau de la sortie O3 du composant C3. Ainsi, depuis le dernier incrément du signal c-out (instant t5 antérieur à l'instant t4 - transition sur la sortie O4), la transition a traversé les composants C5, C1, C2 et C3 dans cet ordre.
En outre, à l'instant t4, le signal c-out indique que 19 transitions ont été comptées. A titre d'exemple, la valeur du signal c-out à l'instant t4 est mémorisée par le circuit 9. Depuis l'instant t1, la transition se propageant dans l'oscillateur 3 a donc traversé 19-11-1=7 fois la chaîne de composants C5, C1, C2, C3 et C4 pris dans cet ordre.
Le circuit 9 en déduit que, entre les instants t1 et t4, la transition a traversé le composant C1 0 fois entre les instants t1 et t2, 7 fois entre les instants t2 et t5 et 1 fois entre les instants t5 et t4, c’est-à-dire au total 8 fois entre les instants t1 et t4. De manière similaire, le circuit 9 détermine que, entre les instants t1 et t4, la transition a traversé 8 fois le composant C2, 9 fois le composant C3, 8 fois le composant C4 et 8 fois le composant C5.
Dans cet exemple où les composants Ci sont tous identiques, entre les instants t1 et t4, la transition a traversé 41 composants Ci identiques en série. Il peut par exemple être déduit de cette information que le délai de propagation moyen d'une transition dans un composant Ci est égal à 2*T/41 avec T la durée d'un cycle, ou période, du signal d'horloge clk.
Les calculs indiqués ci-dessus sont en pratique mis en oeuvre par le circuit 9, uniquement au moyen de la valeur du signal c-out et aux instants t1 et t4, et du signal M[1..5] représentatif de l'état des sorties Oi mémorisées aux instants t1 et t4.
Selon un autre exemple, le circuit 7 a son entrée connectée à la sortie M[j] de l'élément Mj dont l'entrée est connectée à la sortie Oi où le circuit 7 compte les transitions d'états. Par exemple, le circuit 7 a son entrée connectée à la sortie M[4]. Dans ce cas, le circuit 7 ne compte les transitions d'états sur la sortie O4 que quand le verrou M4 est transparent, c’est-à-dire par exemple entre les instants t3 et t4 en se référant aux chronogrammes de la figure 2. En outre, la position de la transition dans l'oscillateur 3 aux instants t3 et t4 est connue grâce à la valeur prise par le signal M[1..5] à partir de ces instants respectifs, ce qui permet de déterminer le nombre de composants Ci traversés par la transition entre ces instants t3 et t4. La connexion de l'entrée du circuit 7 à la sortie M[j] d'un verrou Mj permet que l'état des signaux M[1..5] et c-out soit stable entre les mêmes instants, ou, dit autrement, que l'état de ces signaux soit mémorisé aux mêmes instants. Cela permet d'éviter qu'à un instant où le signal M[1..5] est mémorisé et indique que la transition se situe au niveau de la sortie Oi où le circuit 7 compte les transition, cette transition n'ait pas encore été comptée par le circuit 7. En effet, cela pourrait conduire à une erreur sur le nombre de composants Ci traversés par la transition qui est déterminé à partir des signaux c-out et M[1..5].
On a décrit ici des exemples dans lesquels l'oscillateur 3 est dépourvu de moyen permettant, sous le contrôle d'un signal de contrôle, de bloquer ou d'autoriser la propagation d'une transition ou oscillation dans l'oscillateur 3. Dans un autre exemple, l'oscillateur 3 comprend un tel moyen configuré pour empêcher la propagation d'une oscillation à travers l'un des composants Ci quand le signal de contrôle est dans un premier état, et pour autoriser la propagation de l'oscillation à travers ce composant Ci le signal de contrôle est dans un deuxième état. Lorsque la propagation de l'oscillation à travers un composant Ci est bloquée, cela signifie que la transition d'état provoquant cette oscillation est située en entrée de ce composant Ci, et sa position est donc connue.
On a décrit des exemples dans lesquels les éléments Mj sont des verrous. On considère un autre exemple dans lequel les éléments Mj sont des bascules D, configurées pour recopier l'état de leurs entrées de données sur leurs sorties respectives lors d'un front actif, par exemple montant, du signal de synchronisation qu'elles reçoivent, et pour maintenir l'état de leurs sorties respectives jusqu'au front actif suivant de ce signal. On considère, par exemple, que le signal clk est le signal de synchronisation des bascules Mj. En reprenant l'exemple des chronogrammes de la figure 2, la valeur ou état du signal M[1..5] entre les instants t1 et t3, entre les instants t3 et t4 et entre l'instant t4 et un front actif suivant du signal clk est représentative de l'état des sorties Oi aux instants respectivement t1, t3 et t4. A partir du signal M[1..5] et de la valeur du signal c-out aux instants t1, t3 et t4, le circuit 9 peut donc déterminer le nombre de composants Ci traversés par une transition d'états entre les instants t1 et t3, entre les instants t3 et t4, et/ou entre les instants t1 et t4.
Plus généralement, selon le type d'éléments de mémorisation Mj (bascule ou verrou), et le signal de synchronisation fourni par le circuit 5 à ces éléments, le dispositif 1, et plus particulièrement son circuit 9, est configuré pour déterminer combien de composants Ci sont traversés par une transition entre deux fronts actifs consécutifs du signal clk et/ou entre deux fronts actifs non consécutifs du signal clk, c’est-à-dire deux fronts actifs séparés l'un de l'autre par au moins un autre front actif.
Bien que cela n'ait pas été illustré en figure 1 et n'ait pas été détaillé dans les exemples décrits en relation avec la figure 2, le cas échéant, le circuit 9 comprend des circuits de mémorisation, par exemple des registres, séquencés par le signal clk ou le signal sync, configurés pour mémoriser l'état du signal M[1..5] et l'état du signal c-out. La prévision de ces moyens ou circuits de mémorisation dans le circuit 9 et l'implémentation du circuit 9 sont à la portée de la personne du métier à partir des indications fonctionnelles données ci-dessus.
A partir du nombre d'éléments Ci traversés par une transition entre deux fronts du signal clk, c’est-à-dire à partir du nombre de fois où la transition a traversé chacun de ces éléments Ci entre ces deux fronts du signal clk, des informations sur le circuit digital surveillé peuvent être déterminées. A titre d'exemple, lorsque tous les composants Ci sont identiques, le temps moyen de propagation, entre les deux fronts, d'une transition à travers un composant Ci peut être déterminé. Ce délai moyen est par exemple ensuite utilisé pour extrapoler le temps de propagation d'un signal dans des chemins combinatoires du circuit surveillé, de manière à vérifier si le temps de propagation dans chacun de ces chemins combinatoires est bien inférieur ou égal à la durée prédéterminée associée à ce chemin, minorée de la marge temporelle thd+tsu, c’est-à-dire de manière à vérifier si le circuit surveillé fonctionne de manière attendue. Si ce n'est pas le cas, des compensations peuvent être mises en œuvre pour prévenir un disfonctionnement du circuit surveillé.
Plutôt que d'utiliser le dispositif 1, on aurait pu penser utiliser un dispositif comprenant uniquement un oscillateur en anneau, c’est-à-dire un dispositif de surveillance dépourvu des éléments de mémorisation Mj. La fréquence de l'oscillateur aurait alors indiqué le temps moyen de propagation dans les composants constitutifs de la chaîne de l'oscillateur.
Toutefois, un tel dispositif est insensible aux variations du signal clk. Ainsi, si la période T du signal clk diminue par rapport à une valeur nominale par exemple définie lors de la conception du circuit, cela ne pourrait pas être détecté par un tel dispositif, bien qu'une telle diminution de la période T du signal clk puisse entraîner un disfonctionnement du circuit digital surveillé.
Plutôt que d'utiliser le dispositif 1, on aurait aussi pu penser à utiliser un dispositif de surveillance couramment appelé circuit à réplique programmable ("Tunable Replica Circuit"), ou TRC. Un tel dispositif comprend une réplique, éventuellement programmable, d'un chemin combinatoire du circuit surveillé. Un tel dispositif comprend en outre un convertisseur d'une durée en un signal numérique ("Time to Digital Converter" en anglais), ou TDC, synchronisé avec le signal clk. Dans un tel dispositif, une transition d'états synchronisée avec un front actif du signal clk est fournie en entrée de la réplique de chemin combinatoire, et le convertisseur TDC fournit, au front actif suivant du signal clk, un signal numérique représentatif du temps de propagation de la transition dans la réplique de chemin combinatoire.
Toutefois, un dispositif de surveillance de type TRC ne fonctionne que lorsque le temps de propagation d'une transition dans le chemin combinatoire répliqué est compris entre un temps de propagation minimal et un temps de propagation maximal déterminés par le convertisseur TDC.
Par ailleurs, un dispositif de surveillance de type TRC comprend généralement un circuit introduisant un délai de propagation entre la sortie du chemin combinatoire répliqué et l'entrée du convertisseur TDC, de sorte que, pour des conditions nominales de fabrication et de fonctionnement, le temps de propagation d'une transition dans le chemin combinatoire répliqué soit sensiblement au milieu de la plage définie par les temps maximal et minimal de propagation que le convertisseur TDC peut mesurer. Du fait que les variations des délais de propagation dans le chemin combinatoire répliqué et les variations des délais de propagation dans le circuit de délai sont généralement différents, cela peut conduire à une erreur de mesure.
Les inconvénients mentionnés en relation avec les deux dispositifs de surveillance ci-dessus (oscillateur en anneau et dispositif de type TRC), ne se retrouvent pas dans le dispositif 1.
La figure 3 représente, de manière très schématique, un autre mode de réalisation d'un dispositif de surveillance 1. Plus particulièrement, la figure 3 représente un mode de réalisation particulier du mode de réalisation général du dispositif 1 décrit en relation avec les figures 1 et 2. Seules les différences entre le dispositif 1 de la figure 1 et celui de la figure 3 sont ici détaillées.
Dans le mode de réalisation de la figure 3, l'oscillateur 3 comprend des moyens, dans cet exemple le composant C1, configurés pour empêcher des oscillations dans l'oscillateur 3 lorsqu'un signal de contrôle est dans un premier état, et pour autoriser lesdites oscillations lorsque le signal de contrôle est dans un deuxième état. Ce signal de contrôle est obtenu à partir du signal clk, de sorte que le signal de contrôle soit au deuxième état entre les deux fronts du signal clk entre lesquels le dispositif 1 détermine combien d'éléments Ci ont été traversés par une transition. De préférence, ce signal de contrôle est fourni par le circuit 5.
Dans cet exemple, le signal de contrôle est le signal sync, le composant C1 est une porte NON ET, et les autres composants Ci sont des inverseurs. Ainsi, l'état bas du signal sync bloque la transmission d'une transition entre l'entrée et la sortie du composant C1, et l'état haut du signal sync autorise cette transmission.
De préférence, comme c'est le cas en figure 3, lorsque l'oscillateur 3 comprend un tel composant C1 permettant d'interrompre ou d'autoriser la propagation d'une transition dans l'oscillateur 3, le circuit 7 est configuré pour compter les transitions sur la sortie O1 de ce composant C1. Dans l'exemple de la figure 3, le circuit 7 a une entrée connectée à la sortie M[1] de l'élément M1.
Dans l'exemple de la figure 3, les éléments Mj sont des verrous, et un exemple de mode de réalisation du circuit 7 est représenté. Dans ce mode de réalisation, le circuit 7 comprend un compteur C fournissant le signal c-out, le nombre de transitions comptées par le compteur C étant incrémenté d'une unité à chaque fois qu'une entrée du compteur C reçoit un front montant d'un signal x-out. Le circuit 7 comprend en outre un composant ou porte logique 11 configuré pour fournir le signal x-out. Le signal x-out présente un front montant à chaque fois que la sortie O1 passe de l'état bas à l'état haut et à chaque fois que cette sortie passe de l'état haut à l'état bas, dans cet exemple si les verrous Mj sont transparents. Dans cet exemple, le composant 11 est une porte OU EXCLUSIF, dont une entrée est connectée à la sortie M[1] et dont une autre entrée est connectée à une sortie M[j] d'un autre élément Mj, dans cet exemple la sortie M[3] de l'élément M3.
La personne du métier est en mesure de prévoir une connexion du composant 11 différente de celle décrite ici à titre d'exemple, et/ou un composant 11 autre qu'une porte OU EXCLUSIF, par exemple dans le cas où les composants C2, C3, C4 et C5 ne seraient pas tous des inverseurs.
En figure 3, un exemple de mode de réalisation du circuit 5 est représenté. Le circuit 5 comprend une bascule M synchronisée avec les fronts montants du signal clk, dont l'entrée de donnée reçoit un signal mes et dont la sortie fournit le signal sync. Le signal mes permet de choisir, ou déterminer, le nombre de cycles du signal clk où le signal sync est à l'état haut, respectivement bas. Cela permet de choisir les deux fronts actifs du signal clk entre lesquels le dispositif 1 détermine le nombre de composants Ci traversés par une transition.
La personne du métier est en mesure de prévoir d'autres façons de mettre en œuvre le circuit 5. Par exemple, dans le cas où l'état du signal sync est commuté à chaque front montant du signal clk, le circuit 5 peut être mis en œuvre avec un diviseur de fréquence configuré pour fournir le signal sync à une fréquence deux fois plus faible que le signal clk.
La figure 4 représente des chronogrammes illustrant l'évolution de signaux du dispositif de la figure 3 selon un mode de mise en œuvre. Plus particulièrement, la figure 4 illustre l'évolution des signaux mes, clk, sync, M[1..5] et c-out. En figure 4, on considère à titre d'exemple que :
le nombre N de composants Ci est égal à 5 ;
le nombre K d'éléments de mémorisation Mj est égal à 5 ;
le composant C1 est une porte NON ET telle que décrite précédemment, les autres composants Ci étant tous des inverseurs ;
les composants Mj sont tous des verrous, configurés pour être transparents quand le signal sync est à l'état haut, et verrouillés quand le signal sync est à l'état bas ;
le circuit 7 est mis en œuvre et connecté de la façon illustrée par la figure 3 ; et
le circuit 5 est configuré pour commuter l'état du signal sync à chaque front montant du signal clk.
le nombre N de composants Ci est égal à 5 ;
le nombre K d'éléments de mémorisation Mj est égal à 5 ;
le composant C1 est une porte NON ET telle que décrite précédemment, les autres composants Ci étant tous des inverseurs ;
les composants Mj sont tous des verrous, configurés pour être transparents quand le signal sync est à l'état haut, et verrouillés quand le signal sync est à l'état bas ;
le circuit 7 est mis en œuvre et connecté de la façon illustrée par la figure 3 ; et
le circuit 5 est configuré pour commuter l'état du signal sync à chaque front montant du signal clk.
A un instant t10 de début des chronogrammes, le signal mes est à l'état haut, le signal clk est à l'état bas, le signal sync est à l'état bas, les verrous Mj sont à l'état verrouillés, et le signal c-out est dans un état mémorisé, le signal c-out indiquant dans cet exemple que 14 transitions ont été comptées. Par ailleurs, du fait que le signal sync est à l'état bas, la sortie O1 est nécessairement à l'état haut. Il en résulte que les sorties O2, O3, O4, et O5 sont à l'état respectivement bas, haut, bas et haut, le signal x-out est à l'état bas, et la propagation d'une oscillation dans l'oscillateur 3 est bloquée au niveau de l'entrée du composant C1.
A un instant t11 suivant, correspondant à un front montant suivant du signal clk, du fait que le signal mes est à l'état haut, le signal sync commute à l'état haut et les verrous commutent à l'état transparent. La commutation du signal sync à l'état haut entraine en outre que la sortie O1 commute à l'état bas, et l'oscillateur 3 se met à osciller. Cette commutation de la sortie O1 à l'état bas est transmise sur la sortie M[1] du verrou M1, alors que l'état haut de la sortie O3 est transmis sur la sortie M[3] du verrou M3. Il en résulte que le signal x-out commute à l'état haut. Le signal c-out, qui a la valeur 14 à l'instant t11, est alors incrémenté d'une unité, peu après l'instant t11, suite au front montant du signal x-out.
A un instant suivant t12, correspondant au front montant suivant du signal clk, du fait que le signal mes a été commuté à l'état bas entre les instants t11 et t12 et a ensuite été maintenu à l'état bas jusqu'à l'instant t12, le signal sync est commuté à l'état bas et les verrous Mj commutent à l'état verrouillé. L'état des sorties Oi à l'instant t12 est alors mémorisé, la valeur du signal M[1..5] à partir de l'instant t12 étant représentative de l'état mémorisé des sorties Oi à l'instant t12. Dans cet exemple, à partir de l'instant t12, le signal M[1..5] a la valeur "01001", ce qui indique que, à l'instant t12, la transition se propageant dans l'oscillateur 3 se situe au niveau de la sortie O3 du composant C3. En outre, le passage des verrous Mj à l'état verrouillé entraîne que la valeur du signal c-out à l'instant t12 est également mémorisée, ici à la valeur 19 ce qui indique que, entre les instants t11 et t12, le circuit 7 a compté 19-14=5 transitions d'états sur la sortie O1. Par ailleurs, le passage du signal sync à l'état bas à l'instant t1 provoque l'arrêt des oscillations dans l'oscillateur 3.
Ainsi, la valeur du signal c-out aux instants t11 et t12 est connue, l'état des sorties Oi à l'instant t11 est connu grâce à l'état bas du signal sync à l'instant t11 qui indique que la transition d'états se propageant dans l'oscillateur 3 est bloquée sur la sortie O5 du composant C5, et l'état des sorties Oi à l'instant t12 est connu via la valeur mémorisée du signal M[1..5] à partir de l'instant t12 qui indique que la transition d'états se propageant dans l'oscillateur 3 est située sur la sortie O3 du composant C3 à l'instant t12. Le circuit 9 est alors en mesure de déterminer que, entre les instants t11 et t12, la transition d'états a d'abord traversé le composant C1, puis a traversé 19-14-1=4 fois la chaîne des composants C2, C3, C4, C5, et C1 pris dans cet ordre, et a finalement traversé les composants C2 et C3. Dit autrement, entre les instants t11 et t12, la transition d'états se propageant dans l'oscillateur 3 a traversé 1+4*5+2=23 composants Ci. Plus particulièrement, cette transition a traversé 5 fois le composant C1, 5 fois le composant C2, 5 fois le composant C3, 4 fois le composant C4 et 4 fois le composant C5.
Dans ce mode de réalisation où l'oscillateur 3 comprend le composant logique C1 permettant d'interrompre ou d'autoriser la propagation d'une transition dans l'oscillateur 3, la mémorisation de l'état des sorties Oi à l'instant t11, via le signal M[1..5], n'est pas utile. En effet, la position de la transition à l'instant t11 est imposées par le composant C1 et le signal sync.
Selon un mode de réalisation, avant chaque commutation du signal sync à l'état où les verrous Mj sont transparents, le compteur C du circuit 7 est réinitialisé. A titre d'exemple, cette réinitialisation du compteur C est commandée par une commutation du signal mes de l'état bas à l'état haut intervenu pendant le cycle du signal clk précédant l'instant t11. Dans ce cas, la mémorisation du signal c-out à l'instant t11 par le circuit 9 n'est pas utile.
Toujours selon ce mode de réalisation, de manière avantageuse, le circuit 9 peut être mis en œuvre par une simple unité arithmétique et logique, dépourvue de fonction de mémorisation, et par un circuit combinatoire configuré pour convertir le signal M[1..5] en une valeur n3 correspondant au nombre de composants Ci traversés par une transition depuis le dernier incrément du signal c-out et l'instant t12 où le signal M[1..5] est mémorisé. En reprenant l'exemple de la figure 4, et en considérant à titre d'exemple le cas où le compteur C est initialisé à la valeur n1=0 avant l'instant t11, le signal c-out aurait été à la valeur n2=5 à l'instant t12, et la valeur n3 aurait été égale à 2. Le circuit 9 aurait alors déterminé que le nombre de composant Ci traversés entre les instants t11 et t12 est égal à N*(n2-1)+n3+1=23, l'incrément de 1 correspondant au passage de la transition dans le composant C1 juste après l'instant t11.
La figure 5 représente, de manière très schématique, encore un autre mode de réalisation d'un dispositif de surveillance 1. Plus particulièrement, la figure 5 représente un mode de réalisation particulier du mode de réalisation général du dispositif 1 décrit en relation avec les figures 1 et 2. Seules les différences entre le dispositif 1 de la figure 1 et celui de la figure 5 sont ici détaillées.
Dans le mode de réalisation de la figure 5, en plus de l'ensemble des éléments de mémorisation Mj, le dispositif 1 comprend un autre ensemble d'éléments de mémorisation M'q, avec q entier allant de 1 à K', K' étant inférieur ou égal à N, de préférence égal à K. Chaque élément de mémorisation M'q est configuré pour mémoriser l'état haut ou bas de son entrée de donnée de manière synchrone avec un front ou un niveau du signal de synchronisation sync' obtenu à partir du signal clk, cet état mémorisé étant disponible sur la sortie M'[q] de l'élément de mémorisation, et maintenu à une valeur stable pendant toute la durée de la mémorisation. De préférence, les éléments de mémorisation M'q sont identiques les uns aux autres, et aux éléments Mj.
Les éléments de mémorisation Mj et M'q sont ici des verrous. En outre, le circuit 5 fournit le signal sync de synchronisation aux éléments Mj et le signal sync' de synchronisation aux éléments M'q. Les signaux sync et sync' sont tels que, lorsque les verrous Mj sont transparents, les verrous M'q sont verrouillés, et, à l'inverse, lorsque les verrous Mj sont verrouillés, les verrous M'q sont transparents.
De préférence, il y a autant d'éléments Mj que d'éléments M'q, et pour chaque élément Mj associé à un composant Ci, un élément M'q correspondant est associé à ce composant Ci. Dit autrement, deux éléments Mj et M'q associés à un même composant Ci sont configurés pour mémoriser l'état de la sortie Oi de ce composant Ci, de manière synchrone avec les signaux respectivement sync et sync'.
Le circuit 9 reçoit les signaux de sortie M[j] des verrous Mj et les signaux de sortie M'[q] des verrous Mq. Les signaux M'[q], M[j] et c-out permettent par exemple au circuit 9 de déterminer à chaque cycle du signal clk, combien de composants Ci ont été traversés par une transition lors de ce cycle. Dit autrement, cela permet d'éviter qu'il y ait des périodes entre deux fronts actifs du signal clk où le dispositif ne détermine pas le nombre de composants Ci traversés par une transition entre ces deux fronts actifs.
En figure 5, un exemple de mode de réalisation du circuit 5 est représenté. Dans ce mode de réalisation, le circuit 5 comprend une bascule M synchronisée avec les fronts montants du signal clk. L'entrée de donnée de la bascule M reçoit le signal mes, et la sortie de cette bascule M fournit le signal sync. En outre, le signal sync' correspond ici au complément logique du signal sync, c’est-à-dire que le signal sync' est à l'état bas quand le signal sync est à l'état haut, et inversement. Dans cet exemple, le signal sync' est obtenu en sortie d'un inverseur 12 dont l'entrée reçoit le signal sync. Dans un autre exemple, la bascule M comprend deux sorties fournissant les signaux respectivement sync et sync'.
La personne du métier est en mesure de prévoir d'autres façons de mettre en œuvre le circuit 5.
Dans cet exemple de mode de réalisation, le circuit 7 est configuré pour compter les transitions sur la sortie O1 du composant C1. Plus particulièrement, dans cet exemple, le circuit 7 a une entrée connectée à la sortie du verrou M1 pour pouvoir compter les transitions d'états sur la sortie O1 quand le verrou M1 est à l'état transparent, et une autre entrée connectée à la sortie du verrou M'1 pour pouvoir compter les transitions d'états sur la sortie O1 quand le verrou M'1 est à l'état transparent. Dans un autre exemple non illustré, le circuit 7 est connecté directement à la sortie O1.
En figure 5, un exemple de mode de réalisation du circuit 7 est représenté. Le circuit 7 comprend un compteur C fournissant le signal c-out, le nombre de transitions comptées par le compteur C étant incrémenté d'une unité à chaque fois qu'une entrée du compteur C reçoit un front montant d'un signal mux. Le circuit 7 comprend en outre un composant ou porte logique 13 configuré pour fournir un signal x1 présentant un front montant à chaque fois que la sortie O1 passe de l'état bas à l'état haut et à chaque fois que cette sortie passe de l'état haut à l'état bas, si les verrous Mj sont transparents. Dans cet exemple, le composant 13 est une porte OU EXCLUSIF, dont une entrée est connectée à la sortie M[1] et dont une autre entrée est connectée à une sortie M[j] d'un autre élément Mj, dans cet exemple la sortie M[3] de l'élément M3. De manière similaire, le circuit 7 comprend en outre un composant ou porte logique 15 configuré pour fournir un signal x2 présentant un front montant à chaque fois que la sortie O1 passe de l'état bas à l'état haut et à chaque fois que cette sortie passe de l'état haut à l'état bas, si les verrous M'q sont transparents. Dans cet exemple, le composant 15 est une porte OU EXCLUSIF, dont une entrée est connectée à la sortie M'[1] et dont une autre entrée est connectée à une sortie M'[q] d'un autre élément M'q, dans cet exemple la sortie M'[q] de l'élément M'3. Le circuit 7 comprend un composant 17 configuré pour que le signal mux soit le signal x1 quand les verrous Mj sont transparents, et pour que le signal mux soit le signal x2 quand les verrous M'q sont transparents. Le composant 17 est par exemple un multiplexeur comprenant deux entrées recevant les signaux respectivement x1 et x2, une entrée de commande recevant le signal sync ou sync', et une sortie fournissant le signal mux.
La personne du métier est en mesure de prévoir d'autres façons de mettre en œuvre le composant 7 et/ou d'autres façons de relier ce composant 7 à une ou plusieurs sorties Oi.
La figure 6 représente des chronogrammes illustrant l'évolution de signaux du dispositif de la figure 5 selon un mode de mise en œuvre. Plus particulièrement, la figure 6 illustre l'évolution des signaux clk, mes, sync, M[1..5], sync', M'[1..5] et c-out, le signal M'[1..5] correspondant à la concaténation des sorties M'[1], M'[2] M'[3] M'[4] et M'[5] prises dans cet ordre. En figure 6, on considère à titre d'exemple que les circuits 5 et 7 sont tels que représentés et connectés en figure 5, et que le circuit 5 fourni un signal sync commutant à chaque front actif, dans cet exemple à chaque front montant, du signal clk.
A un instant t20 de début des chronogrammes, les signaux clk, mes et sync sont à l'état bas et le signal sync' est à l'état haut. Les verrous Mj et M'q sont donc respectivement verrouillés et transparents. Bien que cela ne soit pas représenté en figure 6, le compteur C reçoit alors le signal x2.
Avant un instant suivant t21 correspondant au front montant suivant du signal clk, le signal mes est commuté à l'état haut. Ainsi, à l'instant t21, les signaux sync et sync' commutent respectivement à l'état haut et à l'état bas, les verrous Mj et M'q commutant respectivement à l'état transparent et à l'état verrouillé. L'état des sorties Oi à l'instant t21 est mémorisé, la valeur ou l'état du signal M'[1..5] à partir de l'instant t21 étant représentative de l'état mémorisé des sorties Oi à l'instant t21. Dans cet exemple, à partir de l'instant t21, le signal M'[1..5] a la valeur "00101", ce qui indique que, à l'instant t21, la transition se propageant dans l'oscillateur 3 se situe au niveau de la sortie O5 du composant C5.
En outre, à l'instant t21 le signal c-out est à la valeur 32, et, bien que cela ne soit pas représenté en figure 6, le compteur C reçoit le signal x1 à partir de l'instant t21.
Avant un instant suivant t22 correspondant au front montant suivant du signal clk, le signal mes est commuté à l'état bas. Ainsi, à l'instant t22, les signaux sync et sync' commutent respectivement à l'état bas et à l'état haut, les verrous Mj et M'q commutant respectivement à l'état verrouillé et à l'état transparent. L'état des sorties Oi à l'instant t22 est mémorisé, la valeur ou l'état du signal M[1..5] à partir de l'instant t22 étant représentative de l'état mémorisé des sorties Oi à l'instant t22. Dans cet exemple, à partir de l'instant t22, le signal M[1..5] a la valeur "01001", ce qui indique que, à l'instant t22, la transition se propageant dans l'oscillateur 3 se situe au niveau de la sortie O3 du composant C3.
En outre, à l'instant t22 le signal c-out est à la valeur 37, et, bien que cela ne soit pas représenté en figure 6, le compteur C reçoit le signal x2 à partir de l'instant t22.
Avant un instant suivant t23 correspondant au front montant suivant du signal clk, le signal mes est commuté à l'état haut. Ainsi, à l'instant t23, les signaux sync et sync' commutent respectivement à l'état haut et à l'état bas, les verrous Mj et M'q commutant respectivement à l'état transparent et à l'état verrouillé. L'état des sorties Oi à l'instant t23 est mémorisé, la valeur ou l'état du signal M'[1..5] à partir de l'instant t23 étant représentative de l'état mémorisé des sorties Oi à l'instant t23. Dans cet exemple, à partir de l'instant t23, le signal M'[1..5] a la valeur "11010", ce qui indique que, à l'instant t23, la transition se propageant dans l'oscillateur 3 se situe au niveau de la sortie O5 du composant C5.
En outre, à l'instant t23 le signal c-out est à la valeur 42, et, bien que cela ne soit pas représenté en figure 6, le compteur C reçoit le signal x1 à partir de l'instant t23.
Avant un instant suivant t24 correspondant au front montant suivant du signal clk, le signal mes est commuté à l'état bas. Ainsi, à l'instant t24, les signaux sync et sync' commutent respectivement à l'état bas et à l'état haut, les verrous Mj et M'q commutant respectivement à l'état verrouillé et à l'état transparent. L'état des sorties Oi à l'instant t24 est mémorisé, la valeur ou l'état du signal M[1..5] à partir de l'instant t24 étant représentative de l'état mémorisé des sorties Oi à l'instant t24. Dans cet exemple, à partir de l'instant t24, le signal M[1..5] a la valeur "01011", ce qui indique que, à l'instant t23, la transition se propageant dans l'oscillateur 3 se situe au niveau de la sortie O4 du composant C4.
En outre, à l'instant t24 le signal c-out est à la valeur 48, et, bien que cela ne soit pas représenté en figure 6, le compteur C reçoit le signal x2 à partir de l'instant t24.
A partir des valeurs du signal c-out et de la position de la transition dans l'oscillateur 3 à chacun des instants t21, t22, t23 et t24, selon un mode de réalisation, le circuit 9 est en mesure de déterminer, de manière similaire à ce qui a été décrit précédemment en relation avec les figures 2 et 4, le nombre de composants Ci traversés par la transition entre les instants t21 et t22, entre les instants t22 et t23, et entre les instants t23 et t24, c’est-à-dire le nombre de composants Ci traversés à chaque cycle du signal clk.
Cela permet par exemple d'obtenir, pour chaque cycle du signal clk, une valeur moyenne de délai de transmission dans un composant Ci, cette valeur moyenne étant alors sensible aux variations rapides de condition de fonctionnement, c’est-à-dire des variations, par exemple de la tension d'alimentation, ayant une durée inférieure à celle d'un cycle du signal clk.
A partir mêmes valeurs du signal c-out et de la position de la transition dans l'oscillateur 3 à chacun des instants t21, t22, t23 et t24, selon un autre mode de réalisation, le circuit 9 est en mesure de déterminer le nombre de composants Ci traversés par la transition entre deux fronts du signal clk sélectionnés parmi les fronts ayant lieu aux instants t21, t22, t23 et t24.
Cela permet par exemple d'obtenir une valeur moyenne de délai de transmission dans un composant Ci pendant plusieurs cycles du signal clk, cette valeur moyenne étant moins sensible aux variations rapides de condition de fonctionnement, et donc plus sensible à des variations lentes de conditions de fonctionnement, par exemple des variations liées au vieillissement.
Les deux modes de réalisation ci-dessus peuvent être combinés.
On a décrit ci-dessus en relation avec les figures 1 à 6 des exemples de modes de réalisation dans lesquels chaque composant Ci est associé à au moins un élément de mémorisation configuré pour mémoriser l'état de la sortie Oi de ce composant Ci lors de fronts actifs du signal clk. Dans des variantes de réalisation, seuls certains composants Ci sont associés à tel élément de mémorisation. Dans ces variantes, la position de la transition dans l'oscillateur 3 est alors déterminée de manière moins précise, d'où il résulte que la détermination du nombre de composants Ci traversés par la transition entre deux fronts du signal clk est moins précise.
Divers modes de réalisation et variantes ont été décrits. La personne du métier comprendra que certaines caractéristiques de ces divers modes de réalisation et variantes pourraient être combinées, et d’autres variantes apparaitront à la personne du métier. En particulier, la personne du métier est en mesure de prévoir d'autres mises en œuvre de l'oscillateur en anneau 3, du circuit 5, du circuit 7 et/ou du circuit 9, dès lors que :
le dispositif 1 comprend un ensemble d'éléments de mémorisation synchrones configurés pour mémorisés l'état d'au moins certaines sorties des composants Ci constitutifs de l'oscillateur 3 ;
le circuit 5 est configuré pour synchroniser les mémorisations dans ces éléments de mémorisation avec des fronts d'un signal d'horloge clk ;
le circuit 7 est configuré pour compter des transitions d'états se produisant sur la sortie Oi d'un de ces composants Ci ; et
le circuit 9 est configuré pour déterminé un nombre de composants Ci traversé par une transition d'états se propageant dans l'oscillateur 3 entre deux fronts du signal d'horloge, à partir d'un nombre compté de transitions d'états fourni par le circuit 7 et des états mémorisées des sorties fournis par les éléments de mémorisation. Par exemple, la personne du métier est en mesure de prévoir que l'oscillateur en anneau comprenne une réplique, éventuellement programmable, d'un chemin combinatoire du circuit surveillé, et/ou un ou plusieurs composants logiques programmables.
le dispositif 1 comprend un ensemble d'éléments de mémorisation synchrones configurés pour mémorisés l'état d'au moins certaines sorties des composants Ci constitutifs de l'oscillateur 3 ;
le circuit 5 est configuré pour synchroniser les mémorisations dans ces éléments de mémorisation avec des fronts d'un signal d'horloge clk ;
le circuit 7 est configuré pour compter des transitions d'états se produisant sur la sortie Oi d'un de ces composants Ci ; et
le circuit 9 est configuré pour déterminé un nombre de composants Ci traversé par une transition d'états se propageant dans l'oscillateur 3 entre deux fronts du signal d'horloge, à partir d'un nombre compté de transitions d'états fourni par le circuit 7 et des états mémorisées des sorties fournis par les éléments de mémorisation. Par exemple, la personne du métier est en mesure de prévoir que l'oscillateur en anneau comprenne une réplique, éventuellement programmable, d'un chemin combinatoire du circuit surveillé, et/ou un ou plusieurs composants logiques programmables.
Enfin, la mise en oeuvre pratique des modes de réalisation et variantes décrits est à la portée de la personne du métier à partir des indications fonctionnelles données ci-dessus. En particulier, la personne du métier est en mesure de mettre en œuvre le circuit 9, le cas échéant en prévoyant des circuits de mémorisation tels que des registres, de manière à mémoriser, de manière synchrone avec le signal clk, le signal sync et/ou le signal sync', les signaux M[1..K], M[1..K'] et/ou c-out. Par exemple, en reprenant l'exemple de la figure 6, la personne du métier est en mesure de prévoir des moyens de mémorisation configurés pour mémoriser le signal c-out à chaque front montant du signal clk (instants t21, t23, t24, etc.).
Claims (15)
- Dispositif comprenant :
un oscillateur en anneau (3) comprenant une chaine de composants logiques (C1, C2, C3, C4, C5) ;
un ensemble d'éléments de mémorisation (M1, M2, M2, M4, M5) chacun associé à un composant logique différent de ladite chaine et configuré pour mémoriser un état d'une sortie (O1, O2, O3, O4, O5) dudit composant logique auquel ledit élément de mémorisation est associé ;
un premier circuit (7) configuré pour compter des transitions d'états d'une sortie (O4 ; O1) d'un composant logique donné (C1 ; C4) de ladite chaîne ;
un deuxième circuit (5) configuré pour synchroniser chaque mémorisation avec un signal d'horloge (clk) ; et
un troisième circuit (9) configuré pour déterminer un nombre de composants logiques de ladite chaîne traversés par une transition d'états entre deux fronts du signal d'horloge, à partir du nombre compté de transitions d'états et des états mémorisés desdites sorties. - Dispositif selon la revendication 1, dans lequel le troisième circuit (9) est configuré pour déterminer un nombre de fois où ladite transition d'états parcourt entièrement ladite chaîne entre lesdits deux fronts, à partir du nombre compté de transitions d'états.
- Dispositif selon la revendication 1 ou 2, dans lequel le troisième circuit (9) est configuré pour déterminer une position de ladite transition d'états dans ladite chaîne lors d'un front du signal d'horloge, à partir des états mémorisés desdites sorties lors dudit front.
- Dispositif selon les revendications 2 et 3, dans lequel le troisième circuit (9) est configuré pour déterminer le nombre de composants logiques (C1, C2, C3, C4, C5) traversés par ladite transition d'états entre lesdits deux fronts du signal d'horloge (clk) à partir du nombre de fois où ladite transition parcours entièrement l'oscillateur (3) entre lesdits deux fronts, de la position de la transition dans ladite chaîne lors d'un dernier desdits deux fronts et, éventuellement, de la position de la transition dans ladite chaîne lors d'un premier desdits deux fronts.
- Dispositif selon l'une quelconque des revendications 1 à 4, dans lequel chaque composant logique (C1, C2, C3, C4, C5) de ladite chaîne est associé à un élément de mémorisation (M1, M2, M3, M4, M5) dudit ensemble.
- Dispositif selon l'une quelconque des revendications 1 à 5, dans lequel les éléments de mémorisation (M1, M2, M3, M4, M5) sont des verrous.
- Dispositif selon la revendication 6, dans lequel chacun des verrous (M1, M2, M3, M4, M5) a une entrée reliée, de préférence connectée, à la sortie (O1, O2, O3, O4, O5) du composant logique (C1, C2, C3, C4, C5) auquel ledit verrou est associé.
- Dispositif selon la revendication 7, dans lequel le premier circuit (7) comprend une entrée connectée à une sortie (M[1]) du verrou (M1) dont l'entrée est reliée, de préférence connectée, à la sortie (O1) dudit composant logique donné (C1).
- Dispositif selon l'une quelconque des revendications 6 à 8, comprenant un autre ensemble d'éléments de mémorisation (M'1, M'2, M'3, M'4, M'5) chacun associé à un composant logique (C1, C2, C3, C4, C5) différent de ladite chaîne et configuré pour mémoriser un état de la sortie (O1, O2, O3, O4, O5) dudit composant logique, ledit ensemble et ledit autre ensemble étant de préférence configurés pour que chaque composant logique associé (C1, C2, C3, C4, C5) à un élément de mémorisation (M1, M2, M3, M4, M5) dudit ensemble soit associé à un élément de mémorisation (M'1, M'2, M'3, M'4, M'5) dudit autre ensemble.
- Dispositif selon la revendication 9, dans lequel le deuxième circuit (5) est configuré pour que les verrous (M1, M2, M3, M4, M5) dudit ensemble soient à l'état transparent quand les verrous (M'1, M'2, M'3, M'4, M'5) dudit autre ensemble sont à l'état verrouillé, et pour que les verrous (M1, M2, M3, M4, M5) dudit ensemble soient à l'état verrouillé quand les verrous (M'1, M'2, M'3, M'4, M'5) dudit autre ensemble sont à l'état transparent, le deuxième circuit (5) étant de préférence configuré pour que les verrous (M1, M2, M3, M4, M5, M'1, M'2, M'3, M'4, M'5) commutent entre les états verrouillés et transparents à chaque changement de cycle d'une succession de cycles du signal d'horloge (clk).
- Dispositif selon l'une quelconque des revendications 1 à 10, dans lequel le premier circuit (7) est configuré pour compter les transitions d'un premier état vers un deuxième état, et du deuxième état vers le premier état.
- Dispositif selon l'une quelconque des revendications 1 à 11, dans lequel le deuxième circuit (5) est configuré pour synchroniser chaque mémorisation avec un front actif, de préférence montant, du signal d'horloge (clk).
- Dispositif selon l'une quelconque des revendications 1 à 12, dans lequel l'un (C1) des composants logiques (C1, C2, C3, C4, C5) de ladite chaine, de préférence ledit composant logique donné, est configuré pour empêcher une propagation d'une oscillation dans l'oscillateur (3) lorsqu'un signal de contrôle (sync) est dans un premier état, et pour autoriser la propagation de l'oscillation lorsque le signal de contrôle (sync) est dans un deuxième état, le deuxième circuit (5) étant de préférence configuré pour fournir le signal de contrôle au deuxième état entre lesdits deux fronts.
- Circuit intégré comprenant un dispositif (1) selon l'une quelconque des revendications 1 à 13 et un premier circuit digital configuré pour être séquencé par ledit signal d'horloge (clk).
- Procédé comprenant les étapes consistant à :
- compter au moyen d'un premier circuit (7) des transitions d'états d'une sortie (O1 ; O4) d'un composant logique donné (C1 ; C4) d'un oscillateur en anneau (3) comprenant une chaine de composants logiques (C1, C2, C3, C4, C5) ;
- mémoriser des états des sorties (O1, O2, O3, O4, O5) de composants logiques (C1, C2, C3, C4, C5) de ladite chaine au moyen d'un ensemble d'éléments de mémorisation (M1, M2, M3, M4, M5 ; M'1, M'2, M'3, M'4, M'5) chacun associé à un composant logique différent ;
- synchroniser au moyen d'un deuxième circuit (5) lesdites mémorisations avec un signal d'horloge (clk) ; et
- déterminer au moyen d'un troisième circuit (9) un nombre de composants logiques traversés par une transition d'états entre deux fronts du signal d'horloge (clk), à partir du nombre compté de transitions d'états et des états mémorisés desdites sorties.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2002212A FR3107983B1 (fr) | 2020-03-05 | 2020-03-05 | Dispositif de surveillance d'un circuit digital |
US17/189,984 US20210278461A1 (en) | 2020-03-05 | 2021-03-02 | Digital circuit monitoring device |
CN202110239520.8A CN113359015A (zh) | 2020-03-05 | 2021-03-04 | 数字电路监测设备 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2002212A FR3107983B1 (fr) | 2020-03-05 | 2020-03-05 | Dispositif de surveillance d'un circuit digital |
FR2002212 | 2020-03-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3107983A1 true FR3107983A1 (fr) | 2021-09-10 |
FR3107983B1 FR3107983B1 (fr) | 2022-05-27 |
Family
ID=70456995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR2002212A Active FR3107983B1 (fr) | 2020-03-05 | 2020-03-05 | Dispositif de surveillance d'un circuit digital |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210278461A1 (fr) |
CN (1) | CN113359015A (fr) |
FR (1) | FR3107983B1 (fr) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060274607A1 (en) * | 2005-05-25 | 2006-12-07 | Heinz Mattes | Electrical circuit for measuring times and method for measuring times |
US20080288196A1 (en) * | 2007-05-18 | 2008-11-20 | Harmander Singh | Correction of Delay-Based Metric Measurements Using Delay Circuits Having Differing Metric Sensitivities |
US20130103988A1 (en) * | 2011-10-21 | 2013-04-25 | Renesas Electronics Corporation | Semiconductor device |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6396896B1 (en) * | 2000-04-28 | 2002-05-28 | 3G.Com Inc. | Implementation of functions of multiple successive bits of a shift register |
US6850123B1 (en) * | 2003-05-27 | 2005-02-01 | Xilinx, Inc. | Circuits and methods for characterizing the speed performance of multi-input combinatorial logic |
US7495519B2 (en) * | 2007-04-30 | 2009-02-24 | International Business Machines Corporation | System and method for monitoring reliability of a digital system |
US9077322B2 (en) * | 2012-08-20 | 2015-07-07 | Tektronix, Inc. | Ring oscillator timer circuit |
US8786347B1 (en) * | 2013-05-14 | 2014-07-22 | Texas Instruments Incorporated | Delay circuits for simulating delays based on a single cycle of a clock signal |
US20150277393A1 (en) * | 2014-04-01 | 2015-10-01 | Qualcomm Incorporated | Integrated circuit dynamic de-aging |
US9652430B2 (en) * | 2015-02-10 | 2017-05-16 | Nxp Usa, Inc. | Configurable serial and pulse width modulation interface |
US9983262B1 (en) * | 2016-06-30 | 2018-05-29 | Amazon Technologies, Inc. | Built-in self test controller for a random number generator core |
US20180034452A1 (en) * | 2016-07-26 | 2018-02-01 | Qualcomm Incorporated | Circuit technique to track cmos device threshold variation |
EP3339985B1 (fr) * | 2016-12-22 | 2019-05-08 | ams AG | Convertisseur temps-numérique et procédé de conversion |
US20180350412A1 (en) * | 2017-06-06 | 2018-12-06 | Sandisk Technologies Llc | Systems and methods for adaptive parallel-serial conversion operations |
KR102413192B1 (ko) * | 2017-11-03 | 2022-06-24 | 삼성전자주식회사 | Nbti 또는 pbit를 모니터링하는 테스트 회로 |
-
2020
- 2020-03-05 FR FR2002212A patent/FR3107983B1/fr active Active
-
2021
- 2021-03-02 US US17/189,984 patent/US20210278461A1/en not_active Abandoned
- 2021-03-04 CN CN202110239520.8A patent/CN113359015A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060274607A1 (en) * | 2005-05-25 | 2006-12-07 | Heinz Mattes | Electrical circuit for measuring times and method for measuring times |
US20080288196A1 (en) * | 2007-05-18 | 2008-11-20 | Harmander Singh | Correction of Delay-Based Metric Measurements Using Delay Circuits Having Differing Metric Sensitivities |
US20130103988A1 (en) * | 2011-10-21 | 2013-04-25 | Renesas Electronics Corporation | Semiconductor device |
Also Published As
Publication number | Publication date |
---|---|
US20210278461A1 (en) | 2021-09-09 |
CN113359015A (zh) | 2021-09-07 |
FR3107983B1 (fr) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2590425A1 (fr) | Appareillage pour regler les phases de signaux de donnees appliques a un circuit d'utilisation de donnees | |
US8531322B2 (en) | Time-to-digital converter | |
EP0441684A1 (fr) | Circuit verrouillé en phase et multiplieur de fréquence en résultant | |
FR2863712A1 (fr) | Procede et appareil pour mesurer le sautillement | |
EP3242398B1 (fr) | Générateur de nombres d'oscillations | |
EP1841066B1 (fr) | Estimation de gigue d'un signal d'horloge | |
FR2498032A1 (fr) | Synchroniseur de bits pour signaux numeriques | |
FR2811165A1 (fr) | Procede de cadencement et circuit de cadencement avec boucles a verrouillage de phase doubles | |
EP3375092A1 (fr) | Procédé de synchronisation de convertisseurs de données par un signal transmis de proche en proche | |
FR2937203A1 (fr) | Dispositif de reconstitution de l'horloge d'un signal nrz et systeme de transmissoin associe. | |
EP3376670B1 (fr) | Ligne à retard configurable | |
EP0680170B1 (fr) | Circuit de transmission d'un signal code en ligne sur une ligne téléphonique comprenant un synchroniseur de fréquence | |
FR2666707A1 (fr) | Dispositif de division de frequence programmable. | |
EP3242397B1 (fr) | Structure de multiplexeur | |
FR3133458A1 (fr) | Circuit de génération de séquence temporelle | |
FR3051086B1 (fr) | Circuit de comptage d'impulsions | |
FR2480048A1 (fr) | Boucle analogique a verrouillage en frequence | |
EP2428011B1 (fr) | Démodulateur et système de transmission d'informations modulées, notamment pour étiquette d'identification radiofréquence | |
FR3107983A1 (fr) | Dispositif de surveillance d'un circuit digital | |
EP0064923B1 (fr) | Système de mise en phase de trains numériques et son application à la commutation desdits trains | |
EP0134374A1 (fr) | Horloge à verrouillage de phase | |
EP1606880B1 (fr) | Diviseur de frequence a taux de division variable | |
FR2531824A1 (fr) | Circuit et procede de controle de circuits logiques sequentiels | |
FR2517145A1 (fr) | Circuit diviseur a rapport reglable et synthetiseur de frequence | |
FR3025901A1 (fr) | Dispositif de generation d'un signal d'horloge par multiplication de frequence |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20210910 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
PLFP | Fee payment |
Year of fee payment: 4 |
|
PLFP | Fee payment |
Year of fee payment: 5 |
|
CA | Change of address |
Effective date: 20240708 |
|
CD | Change of name or company name |
Owner name: STMICROELECTRONICS FRANCE, FR Effective date: 20240708 |
|
CJ | Change in legal form |
Effective date: 20240708 |