Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SCAN SEQUENTIAL ELEMENT DEVICE
Document Type and Number:
WIPO Patent Application WO/2015/113977
Kind Code:
A1
Abstract:
The invention proposes a scan sequential element device (scan flip-flop or scan latch) for integrated circuit the device (30) receiving as input three respective input signals D, S1I, SE and at least one clock signal CLK, and comprising an output Q. The device comprises: - a system sequential element (300) comprising an input driven by a first input signal (D) of the device, an input driven by a second input signal (SE) of the device, and an input driven by one of the clock signals (CLK) received as input by the device, and - a phantom sequential element (310) comprising an input driven by the third input signal (S1I) of the device, an input driven by the second input signal (SE) of the device and an input driven by one of the clock signals (CLK) received as input by the device, the device being configured so that the first input signal D is propagated to the output Q of the device through the system sequential element (300) when the second input signal SE is inactivated, and the third input signal (SI) is propagated to the output Q of the device (30) through the phantom sequential element (310) and the system sequential element (300), when the second input signal (SE) is activated, the propagation of the third input signal (SI) from the phantom sequential element (310) to the system sequential element (300) being carried out in an asynchronous manner, that is to say decorrelated from the clock signals (CLK).

Inventors:
GHERMAN VALENTIN (FR)
EVAIN SAMUEL (FR)
SARRAZIN SÉBASTIEN (FR)
Application Number:
PCT/EP2015/051625
Publication Date:
August 06, 2015
Filing Date:
January 27, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
COMMISSARIAT ENERGIE ATOMIQUE (FR)
International Classes:
H03K3/037; G01R31/3185; H03K19/003
Foreign References:
US20120146697A12012-06-14
FR2990764A12013-11-22
US7246287B12007-07-17
Attorney, Agent or Firm:
HNICH-GASRI, Naïma et al. (FR)
Download PDF:
Claims:
Revendications

1 . Dispositif d'élément séquentiel à balayage pour circuit intégré, le dispositif (30) recevant en entrée trois signaux d'entrée (D, SI, SE) et au moins un signal d'horloge (CLK), et comprenant une sortie (Q), caractérisé en ce que le dispositif comprend :

- un élément séquentiel système (300) comprenant une entrée pilotée par un premier signal d'entrée (D) du dispositif, une entrée pilotée par un deuxième signal d'entrée (SE) du dispositif, et une entrée pilotée par l'un desdits signaux d'horloge (CLK) reçus en entrée par le dispositif, et

- un élément séquentiel fantôme (310) comprenant une entrée pilotée par le troisième signal d'entrée (SI) du dispositif, une entrée pilotée par le deuxième signal d'entrée (SE) du dispositif, et une entrée pilotée par l'un desdits signaux d'horloge (CLK) reçus en entrée par le dispositif,

et en ce que le dispositif est configuré de sorte que le premier signal d'entrée (D) est propagé à la sortie (Q) du dispositif à travers l'élément séquentiel système (300) lorsque le deuxième signal d'entrée (SE) est inactivé, et le troisième signal d'entrée (SI) est propagé à la sortie (Q) du dispositif (30) à travers l'élément séquentiel fantôme (310) et l'élément séquentiel système (300) lorsque le deuxième signal d'entrée (SE) est activé, la propagation du troisième signal d'entrée (SI) de l'élément séquentiel fantôme (310) à l'élément séquentiel système (300) étant réalisée de manière asynchrone.

2 - Dispositif selon la revendication 1 , caractérisé en ce que l'élément séquentiel fantôme (310) est configuré pour se déconnecter de l'alimentation lorsque le deuxième signal (SE) est inactivé.

3. Dispositif selon la revendication 2, caractérisé en ce que l'élément séquentiel fantôme (310) comprend au moins un transistor (31 1 ) relié à la troisième entrée pilotée par le deuxième signal (SE), ledit transistor étant configuré pour déconnecter l'alimentation de l'élément séquentiel fantôme lorsque le deuxième signal d'entrée (SE) est inactivé.

4 - Dispositif selon l'une des revendications précédentes, caractérisé en ce que l'élément séquentiel système (300) est un élément séquentiel parmi une bascule autre qu'une bascule à balayage ou un verrou, tandis que l'élément séquentiel fantôme (310) est un élément séquentiel parmi une bascule de type à balayage, une bascule autre qu'une bascule à balayage, et un verrou.

5. Dispositif selon l'une des revendications précédentes, caractérisé en ce que le dispositif (30) est relié en entrée à un signal de remise asynchrone à la valeur 0-logique (« reset_n ») et/ou à un signal de remise asynchrone à la valeur 1 -logique (« set »), et en ce que le dispositif est configuré pour former une bascule à balayage avec remise asynchrone à la valeur 0-logique et/ou à la valeur 1 -logique. 6. Dispositif selon la revendication 5, caractérisé en ce que l'élément séquentiel système (300) comprend un verrou maître système (401 ), un verrou esclave système (402), et une porte logique (403) et en ce que l'élément séquentiel fantôme (310) comprend un verrou fantôme (412) recevant en entrée le troisième signal (SI) et étant connecté en sortie à la sortie de l'élément séquentiel fantôme (310), ladite porte logique (403) recevant en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme (310) et le signal de remise asynchrone à la valeur 0-logique (« reset_n »), et étant reliée en sortie au verrou maître système (401 ), le verrou maître système (401 ) recevant en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et étant reliée en sortie au verrou esclave système (402), le verrou esclave système (402) étant relié en entrée au verrou maître système (401 ) et au signal de remise asynchrone à 0-logique (« reset_n ») et étant connecté en sortie à la sortie du dispositif (Q).

7. Dispositif selon la revendication 5, caractérisé en ce que l'élément séquentiel système (300) comprend un verrou système (404) et une porte logique (403) et en ce que l'élément séquentiel fantôme (310) comprend un verrou maître fantôme (412) recevant en entrée le troisième signal (SI) et un verrou esclave fantôme (413) étant connecté en sortie à la sortie de l'élément séquentiel fantôme (310), ladite porte logique (403) recevant en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme (310) et le signal de remise asynchrone à la valeur 0-logique (« reset_n »), et étant reliée en sortie au verrou système (404), le verrou système (404) recevant en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et étant reliée en sortie à la sortie du dispositif (Q).

8. Dispositif selon l'une des revendications 6 et 7, caractérisé en ce que l'état du verrou système (401 , 404) est remis à la valeur 0-logique de façon asynchrone si la porte logique

(403) est activée, et en ce que le verrou système (401 , 404) étant remis à la valeur 1 - logique de façon synchrone ou asynchrone si la porte logique (403) est inactivée et que le dispositif est en mode à balayage, le dispositif étant en mode balayage lorsque le deuxième signal (SE) est activé.

9. Dispositif selon la revendication 8, caractérisé en ce que la porte logique (403) est activée seulement si : - le signal de remise asynchrone à la valeur 0-logique (« reset_n ») est activé, ou

- si le dispositif (30) est en mode balayage et que la sortie de l'élément séquentiel fantôme (310) prend la valeur 0-logique. 10. Dispositif selon la revendication 5, caractérisé en ce que l'élément séquentiel système (300) comprend un verrou maître système (501 ), un verrou esclave système (502), et une porte logique (503) et en ce que l'élément séquentiel fantôme (310) comprend un verrou fantôme (512) recevant en entrée le troisième signal (SI) et étant connecté en sortie à la sortie de l'élément séquentiel fantôme (310), ladite porte logique (503) recevant en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme (310) et le signal de remise asynchrone à 1 -logique (« set »), et étant reliée en sortie au verrou maître système (501 ), le verrou maître système (501 ) recevant en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et étant reliée en sortie au verrou esclave système (502), le verrou esclave système (502) étant relié en entrée au verrou système (501 ) et au signal de remise asynchrone à 1 -logique (« set ») et étant connecté en sortie à la sortie du dispositif (Q).

1 1 . Dispositif selon la revendication 5, caractérisé en ce que l'élément séquentiel système (300) comprend un verrou système (504) et une porte logique (503) et en ce que l'élément séquentiel fantôme (310) comprend un verrou maître fantôme (512) recevant en entrée le troisième signal (SI) et un verrou esclave fantôme (513) étant connecté en sortie à la sortie de l'élément séquentiel fantôme (310), ladite porte logique (503) recevant en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme (310) et le signal de remise asynchrone à 1 -logique (« set »), et étant reliée en sortie au verrou système (504), le verrou système (504) recevant en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et étant reliée en sortie à la sortie du dispositif

(Q)-

12. Dispositif selon l'une des revendications 10 et 1 1 , caractérisé en ce que l'état du verrou système (501 , 504) est remis à la valeur 1 -logique de façon asynchrone si la porte logique (503) est activée, et en ce que le verrou système (501 ,504) est remis à la valeur 0-logique de façon synchrone ou asynchrone si la porte logique (503) est inactivée et que le dispositif (30) est en mode balayage, le dispositif étant en mode balayage lorsque le deuxième signal d'entrée (SE) est activé.

13. Dispositif selon la revendication 12, caractérisé en ce que la porte logique (503) est activée seulement si : - le signal de remise asynchrone à la valeur 1 -logique (« set ») est activé, ou

- si le dispositif (30) est en mode balayage et que la sortie de l'élément séquentiel fantôme (310) prend la valeur 1 -logique.

Description:
Dispositif d'élément séquentiel à balayage

Domaine technique

La présente invention concerne de manière générale les circuits intégrés et en particulier un dispositif d'élément séquentiel à balayage (bascule à balayage ou verrou à balayage) ayant un faible impact sur la performance.

Art Antérieur

Les circuits numériques réalisés à base de micro et de nanotechnologies peuvent être affectés par des défauts physiques résultant du procédé de fabrication. Ces défauts peuvent engendrer des erreurs de fonctionnement pouvant entraîner une défaillance des systèmes dans lesquels ces circuits sont utilisés.

Les défauts physiques peuvent généralement être identifiés à l'aide de tests de fabrication. La capacité à détecter ces défauts peut être augmentée de façon significative en utilisant des éléments séquentiels « scan » (le terme scan étant un terme anglo-saxon signifiant « à balayage »), e.g. de type bascules scan (« scan flip-flop» en langue anglo- saxonne). Avec ce type de bascule, le test d'un circuit séquentiel peut se limiter au test de sa partie combinatoire, ce qui réduit l'effort de génération de vecteurs de test. Une telle propriété est due au fait qu'une bascule scan offre au moins deux modes de fonctionnement : un mode capture (ou mode normal) dans lequel les données chargées dans les bascules sont issues du circuit, et un mode scan dans lequel les bascules scan sont connectées entre elles pour former une ou plusieurs chaînes de scan permettant d'acheminer les vecteurs de test et décharger les réponses du circuit. Pendant le test d'un circuit les modes scan et capture sont alternés afin d'appliquer le vecteurs de test au circuit et de capturer et récupérer les réponses du circuit.

Des exemples de bascules scan sont décrits dans « Storage Cells for scan Designs », M. Abramovici, M. A. Breuer, A.D. Friedman « Digital Systems Testing and Testable Design », IEEE Press, 1990, section 9.5. Un inconvénient majeur de ces bascules scan est lié à leur impact sur la performance des circuits.

Des approches connues pour réduire l'impact des bascules scan sur la latence s'appuient sur l'architecture de la bascule scan, comme par exemple la solution décrite dans l'article « Eliminating Performance Penalty of Scan », O. Sinanoglu, « International Conférence on VLSI Design », 2012. Comme représenté sur la figure 1 , une telle solution utilise une bascule supplémentaire 10, appelée « bascule fantôme » (« shadow Flip- Flop » en langue anglo-saxonne), afin d'éviter l'insertion d'un multiplexeur 12 devant la bascule système 1 1 , afin de permettre l'implémentation des modes de fonctionnement scan et capture. Cette solution nécessite toutefois l'insertion d'un multiplexeur supplémentaire 13 en sortie de la bascule système 1 1 , ce qui n'a pour effet que de transférer l'impact du scan de l'entrée vers la sortie de la bascule système. Une autre solution pour réduire l'impact sur la latence est décrite dans le brevet US7310755 B2. Cette solution vise à assurer le monitoring en ligne des circuits. Toutefois, elle permet l'insertion de la bascule système dans une chaîne de scan à l'aide d'une bascule fantôme, de type verrou (« shadow latch » en langue anglo-saxonne). Le verrou fantôme est couplé à la bascule système de manière à réduire l'impact du scan sur la latence de la bascule système. Cette solution présente plusieurs limitations dans le cas où elle est utilisée comme solution de test, parmi lesquelles :

- l'activation en ligne du verrou fantôme,

- le fait que l'entrée fonctionnelle est reliée au verrou fantôme, ce qui introduit une augmentation de la latence du circuit,

- la présence de signaux d'horloges différents pour la bascule système et le verrou fantôme, et

- l'infrastructure qui génère un signal « Error L » utilisé pour le monitoring en ligne du système. Un autre inconvénient de la solution décrite dans US7310755 B2 est lié au fait que le multiplexeur, contrôlé par le signal « Error L » qui permet le couplage entre la bascule système et le verrou fantôme, peut générer du bruit en mode scan.

Définition générale de l'invention

L'invention vient améliorer la situation en proposant un dispositif d'élément séquentiel scan pour circuit intégré, le dispositif recevant en entrée trois signaux d'entrée respectifs (D, SI, SE) et au moins un signal d'horloge CLK, et comprenant une sortie Q. Le dispositif comprend :

- un élément séquentiel système comprenant une entrée pilotée par un premier signal d'entrée (D) du dispositif, une entrée pilotée par un deuxième signal d'entrée (SE) du dispositif, et une entrée pilotée par l'un des signaux d'horloge (CLK) reçus en entrée par le dispositif, et

- un élément séquentiel fantôme comprenant une entrée pilotée par le troisième signal d'entrée (SI) du dispositif, une entrée pilotée par le deuxième signal d'entrée (SE) du dispositif, et une entrée pilotée par l'un des signaux d'horloge (CLK) reçus en entrée par le dispositif, le dispositif étant configuré de sorte que le premier signal d'entrée (D) est propagé à la sortie (Q) du dispositif à travers l'élément séquentiel système lorsque le deuxième signal d'entrée (SE) est inactivé, et le troisième signal d'entrée (SI) est propagé à la sortie (Q) du dispositif à travers l'élément séquentiel fantôme et l'élément séquentiel système lorsque le deuxième signal d'entrée (SE) est activé, la propagation du troisième signal d'entrée (SI) de l'élément séquentiel fantôme à l'élément séquentiel système étant réalisée de manière asynchrone, c'est-à-dire décorrélée des signaux d'horloge.

Selon une caractéristique de l'invention, l'élément séquentiel fantôme peut être configuré pour se déconnecter de l'alimentation lorsque le deuxième signal (SE) est inactivé.

L'élément séquentiel fantôme peut notamment comprendre au moins un transistor relié à la troisième entrée pilotée par le deuxième signal (SE), ledit transistor étant configuré pour déconnecter l'alimentation de l'élément séquentiel fantôme lorsque le deuxième signal d'entrée (SE) est inactivé. Selon une autre caractéristique, l'élément séquentiel système peut être un élément séquentiel parmi une bascule de type non-scan ou un verrou, tandis que l'élément séquentiel fantôme peut être un élément séquentiel parmi une bascule de type scan, une bascule de type non-scan, et un verrou. Le dispositif peut être relié en entrée à un signal de remise asynchrone à la valeur 0- logique (« reset_n ») et/ou à un signal de remise asynchrone à la valeur 1 -logique (« set »), tandis que le dispositif est configuré pour former une bascule scan avec remise asynchrone à la valeur 0-logique et/ou à la valeur 1 -logique. Dans un mode de réalisation, l'élément séquentiel système comprend un verrou maître système, un verrou esclave système, et une porte logique et l'élément séquentiel fantôme comprend un verrou fantôme recevant en entrée le troisième signal (SI) et étant connecté en sortie à la sortie de l'élément séquentiel fantôme. La porte logique reçoit en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme et le signal de remise asynchrone à la valeur 0-logique (« reset_n »), et est reliée en sortie au verrou maître système. Le verrou maître système reçoit en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et est reliée en sortie au verrou esclave système, le verrou esclave système étant relié en entrée au verrou maître système et au signal de remise asynchrone à 0-logique (« reset_n ») et étant connecté en sortie à la sortie du dispositif (Q). Dans un autre mode de réalisation, l'élément séquentiel système peut comprendre un verrou système et une porte logique tandis que l'élément séquentiel fantôme comprend un verrou maître fantôme recevant en entrée le troisième signal (SI) et un verrou esclave fantôme connecté en sortie à la sortie de l'élément séquentiel fantôme. La porte logique reçoit en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme et le signal de remise asynchrone à la valeur 0-logique (« reset_n »), et est reliée en sortie au verrou système, le verrou système recevant en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et étant reliée en sortie à la sortie du dispositif (Q).

En particulier, l'état du verrou système est remis à la valeur 0-logique de façon asynchrone si la porte logique est activée, tandis que le verrou système étant remis à la valeur 1 -logique de façon synchrone ou asynchrone si la porte logique est inactivée et que le dispositif est en mode scan, le dispositif étant en mode scan lorsque le deuxième signal (SE) est activé.

La porte logique est activée seulement si :

- le signal de remise asynchrone à la valeur 0-logique (« reset_n ») est activé, ou

- si le dispositif est en mode scan et que la sortie de l'élément séquentiel fantôme prend la valeur 0-logique.

Dans un autre mode de réalisation, l'élément séquentiel système comprend un verrou maître système, un verrou esclave système, et une porte logique tandis que l'élément séquentiel fantôme comprend un verrou fantôme recevant en entrée le troisième signal (SI) et est connecté en sortie à la sortie de l'élément séquentiel fantôme. La porte logique reçoit en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme et le signal de remise asynchrone à 1 -logique (« set ») et est reliée en sortie au verrou maître système, le verrou maître système recevant en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et étant reliée en sortie au verrou esclave système, le verrou esclave système étant relié en entrée au verrou système et au signal de remise asynchrone à 1 -logique (« set ») et étant connecté en sortie à la sortie du dispositif (Q). En variante, l'élément séquentiel système peut comprendre un verrou système et une porte logique. L'élément séquentiel fantôme comprend un verrou maître fantôme recevant en entrée le troisième signal (SI) et un verrou esclave fantôme connecté en sortie à la sortie de l'élément séquentiel fantôme. La porte logique reçoit en entrée le deuxième signal (SE), la sortie de l'élément séquentiel fantôme et le signal de remise asynchrone à 1 -logique (« set »), et est reliée en sortie au verrou système, le verrou système recevant en outre en entrée le premier signal (D) et le deuxième signal d'entrée du dispositif (SE) et étant reliée en sortie à la sortie du dispositif (Q).

L'état du verrou système est remis à la valeur 1 -logique de façon asynchrone si la porte logique est activée, et le verrou système est remis à la valeur 0-logique de façon synchrone ou asynchrone si la porte logique est inactivée et que le dispositif est en mode scan, le dispositif étant en mode scan lorsque le deuxième signal d'entrée (SE) est activé.

En particulier, la porte logique est activée seulement si :

- le signal de remise asynchrone à la valeur 1 -logique (« set ») est activé, ou

- si le dispositif est en mode scan et que la sortie de l'élément séquentiel fantôme prend la valeur 1 -logique.

Ces différents modes de réalisation fournissent ainsi un nouveau type d'élément séquentiel scan avec élément séquentiel fantôme qui permet de réduire l'impact du scan sur la latence. Cette solution élimine toutes les limitations de l'art antérieur tout en assurant un impact très faible sur la latence. De plus, les surcoûts en surface et en puissance dissipée hors test sont aussi fortement réduits.

Brève description des dessins

D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit et des figures annexées dans lesquels:

- La figure 1 représente une architecture de bascule scan selon l'art antérieur ; - La figure 2 représente la structure générale d'un dispositif d'élément séquentiel scan, selon certains modes de réalisation de l'invention ;

- La figure 3 représente un dispositif de bascule scan avec verrou fantôme, bascule maître/esclave système et capacité de remise asynchrone à 0-logique de l'état de la bascule système (« reset » en langue anglo-saxonne), selon une forme de réalisation de l'invention ;

- La figure 4 représente un dispositif de verrou scan avec bascule fantôme, verrou système et capacité de remise asynchrone à 0-logique de l'état du verrou système (« reset » en langue anglo-saxonne) ; - La figure 5 représente un dispositif de bascule scan avec verrou fantôme, bascule maître/esclave système et capacité de remise asynchrone à 1 -logique de l'état de la bascule système (« set » en langue anglo-saxonne), selon une autre forme de réalisation ; et - La figure 6 représente un dispositif de verrou scan avec bascule fantôme, verrou système et capacité de remise asynchrone à 1 -logique de l'état du verrou système (« set » en langue anglo-saxonne).

Description détaillée

La figure 2 représente une vue générale d'un dispositif 30 formant un élément séquentiel pour circuit intégré qui peut être configuré en mode capture ou en mode scan, selon certains modes de réalisation de l'invention. Le dispositif 30 comprend un élément séquentiel système 300 couplé avec un élément séquentiel fantôme 310.

En particulier, l'élément séquentiel fantôme 310 peut être un verrou, ou une bascule de type scan ou non-scan, tandis que l'élément séquentiel système 300 peut être une bascule (qui peut elle-même être constituée de plusieurs verrous) ou un verrou.

Pour faciliter la description qui suit des modes de réalisation de l'invention, les paramètres et composants suivants sont définis:

- Signal SE : Le signal SE, encore appelé « Signal d'activation de mode scan » (« SE » étant l'acronyme pour « Scan Enable »), désigne un signal qui permet de définir les modes de fonctionnement scan et capture d'une bascule scan. Il sera considéré dans la suite de la description que, dans le mode scan, le signal SE est activé alors qu'en mode capture le signal SE est inactivé; par ailleurs, bien que l'invention ne soit pas limitée à cette forme de réalisation, il est considéré dans la suite de la description que :

• le signal SE est activé, lorsque le signal SE prend la valeur 1 -logique, et que

· le signal SE est inactivé, lorsque le signal SE prend la valeur 0-logique.

- Un « verrou » (désigné ci-après par les symboles L, ML, et SL) désigne un élément séquentiel qui capture une donnée en entrée, c'est-à-dire qu'il devient transparent, sur un niveau donné (haut ou bas) du signal de l'horloge. Bien que les signaux d'horloge ne soient pas représentés de façon explicite sur toutes les figures, il est considéré ci-après que les verrous maîtres marqués « ML » (acronyme pour « master latch », expression anglo-saxonne signifiant littéralement « verrou maître ») deviennent transparents sur le niveau haut du signal d'horloge tandis que les verrous esclaves marqués « SL » (acronyme pour « slave latch », expression anglo-saxonne signifiant littéralement « verrou esclave ») deviennent transparents sur le niveau bas du signal d'horloge.

- Un signal de remise asynchrone à la valeur logique 0 (noté également « 0-logique »), encore appelé ci-après «reset_n » désigne un signal utilisé pour remettre l'état d'un élément séquentiel (e.g. une bascule ou un verrou) à la valeur 0-logique de façon asynchrone lorsque ce signal est activé. Dans la suite de la description, il sera considéré à titre d'exemple non limitatif que le signal « reset_n » est activé s'il prend la valeur 0- logique.

- Un signal de remise asynchrone à la valeur logique 1 (noté également « 1 -logique »), encore appelé « set », désigne un signal utilisé pour remettre l'état d'un élément séquentiel (e.g. une bascule ou verrou) à la valeur 1 -logique de façon asynchrone lorsque ce signal est activé. Dans la suite de la description, il sera considéré à titre d'exemple non limitatif que le signal « set » est activé s'il prend la valeur 1 -logique.

- Un élément séquentiel est dit de type « système » lorsqu'il est utile à l'implémentation de la spécification fonctionnelle d'un circuit ou d'un System.

- Un élément séquentiel dit « fantôme » est redondant par rapport à la spécification fonctionnelle d'un circuit ou d'un System, et est utilisé pour améliorer les paramètres du système comme sa testabilité.

Tel qu'utilisés dans la présente description, les termes « asynchrone » et « synchrone » caractérisent des opérations de remise à 0-logique ou 1 -logique d'un élément séquentiel. Plus précisément, une telle opération est dite :

-« asynchrone » si elle est effectuée de façon décorrélée du signal d'horloge qui est utilisé pour cadencer l'élément séquentiel,

-« synchrone » si elle est effectuée sur un niveau (haut ou bas) ou sur un front (montant ou descendant) du signal d'horloge utilisé pour cadencer l'élément séquentiel.

Le dispositif 30 délivre une sortie Q. Il est piloté par au moins un signal d'horloge CLK et comprend au moins 3 entrées notées D, SI et SE :

- une première entrée D qui est pilotée par un premier signal D,

- une deuxième entrée SE qui est pilotée par un deuxième signal SE, et

- une troisième entrée SI qui est pilotée par un troisième signal SI.

L'élément séquentiel système 300 comprend au moins :

- une entrée reliée à l'entrée D du dispositif 30, - une entrée reliée à l'entrée SE du dispositif 30,

- une entrée pilotée par l'un des signaux d'horloge CLK du dispositif 30,

- une entrée reliée à la sortie de l'élément séquentiel fantôme 310, et

- une sortie reliée directement à la sortie Q du dispositif 30.

L'élément séquentiel fantôme 310 comprend au moins :

- une entrée reliée à la deuxième entrée SI du dispositif 30,

- une entrée pilotée par l'un des signaux d'horloge CLK du dispositif 30, et

- une sortie reliée à une entrée de la bascule système 300.

Selon une caractéristique de l'invention, le dispositif 30 est configuré de manière à propager à travers l'élément séquentiel 300 le signal D du dispositif 30 vers la sortie Q en mode capture (lorsque le deuxième signal d'entrée SE est inactivé).

Selon une autre caractéristique de l'invention, en mode scan, l'état de l'élément séquentiel fantôme 310 est transmis à l'élément séquentiel système 300. Cette propriété permet la propagation du signal SI, à travers l'élément séquentiel fantôme 310 et l'élément séquentiel système 300, en mode scan (lorsque le deuxième signal d'entrée SE est activé). La propagation du signal d'entrée SI de l'élément séquentiel fantôme 310 vers l'élément séquentiel système 300 est réalisée de manière asynchrone, c'est-à-dire décorrélée du signal d'horloge CLK.

Selon les configurations des éléments séquentiels système et fantôme 300 et 310, le dispositif 30 peut ainsi former un « dispositif de bascule scan » ou un « dispositif de verrou scan ».

En mode capture, le dispositif 30 peut être configuré comme une bascule ou un verrou, en fonction du type de l'élément séquentiel système 300, dont l'entrée donnée est pilotée par le signal D et la sortie pilote le signal Q. L'élément séquentiel fantôme 310 peut être utilisé en mode scan seulement, afin de configurer le dispositif 30 comme une bascule dont l'entrée donnée est pilotée par le signal SI et la sortie pilote le signal Q.

Dans un mode de réalisation préféré de l'invention, l'élément séquentiel fantôme 310 est une bascule tandis que l'élément séquentiel système 300 est un verrou. En variante, l'élément séquentiel fantôme 310 peut être un verrou lorsqu'il n'est pas utilisé pour faire du monitoring en ligne tandis que l'élément séquentiel système 300 est une bascule.

Dans les modes de réalisation où l'élément séquentiel fantôme 310 est un verrou, il peut comprendre des portes logiques permettant de générer une impulsion (« puise ») à partir d'un des fronts (montant ou descendants) du signal d'horloge CLK. Différentes méthodes de génération d'un tel « puise » peuvent être utilisées.

L'élément séquentiel système 300 peut en outre être contrôlé par des signaux de remise asynchrone à la valeur 0-logique (« reset_n ») et/ou de remise asynchrone à la valeur 1 - logique (« set »).

Les éléments séquentiels système et fantôme 300 et 310 peuvent partager des portes logiques et des transistors comme, par exemple, des portes ou des transistors nécessaires à l'inversion du signal d'horloge CLK.

Un transistor 31 1 , par exemple de type n MOS, peut être utilisé en complément pour déconnecter l'alimentation de l'élément séquentiel fantôme 310 en mode capture. En complément ou en variante, un transistor de type p peut être utilisé pour le même but de déconnexion d'alimentation de l'élément séquentiel fantôme 310.

Selon une autre caractéristique de l'invention, l'élément séquentiel fantôme 310 peut être piloté par le même signal d'horloge que l'élément séquentiel système 300. Dans la forme de réalisation où l'élément séquentiel système 300 est un verrou système et où l'élément séquentiel fantôme 310 est un verrou fantôme, un fonctionnement optimal du dispositif en mode scan peut être assuré en connectant les verrous système et fantôme de manière qu'ils forment ensemble une bascule maître-esclave (ML-SL) dont l'entrée de données est pilotée par le troisième signal SI. Le dispositif 30 permet d'éviter l'insertion d'un multiplexeur dans le chemin des données qui relie l'entrée du dispositif qui est pilotée par le signal D à sa sortie qui pilote le signal Q dans le but d'assurer l'implémentation des modes scan et capture. Il en résulte un plus faible impact sur la latence du circuit ou système dans lequel le dispositif 30 est inséré (la latence d'un circuit définit la vitesse ou la fréquence d'horloge avec laquelle le circuit peut fonctionner).

Il est à noter que sur les figures 3, 4, 5 et 6, les signaux d'horloge des éléments séquentiels ne sont pas illustrés, pour simplifier la représentation de ces figures et à titre de clarté, bien qu'utilisés similairement aux modes de réalisation décrits en relation avec la figure 2.

Le dispositif 30 peut être en outre relié en entrée à un quatrième signal « reset_n » permettant de remettre l'état de l'élément séquentiel système et/ou de l'élément séquentiel fantôme à la valeur O-logique de façon asynchrone. Le dispositif 30 peut être en outre relié en entrée à un cinquième signal « set » permettant de remettre de l'élément séquentiel système et/ou de l'élément séquentiel fantôme à la valeur 1 -logique de façon asynchrone. La Figure 3 représente un dispositif 30 adapté pour être utilisé comme bascule scan avec remise asynchrone à la valeur 0-logique lorsque le signal « reset_n » est activé, selon certaines modes de réalisation de l'invention.

L'élément séquentiel système 300 représenté sur la figure 3 comprend un verrou maître 401 (encore appelé « verrou maître système » et désigné par la notation « ML »), un verrou esclave 402 (encore appelé « verrou esclave système » et désigné par la notation « SL ») et une porte logique 403. L'élément séquentiel fantôme 310 représenté comprend un verrou maître (encore appelé « verrou fantôme » ou « verrou maître fantôme » et désigné par la notation « ML ») 412 et un transistor 31 1 pour déconnecter l'alimentation du verrou ML 412 en mode capture.

Le verrou ML 401 devient transparent sur un niveau donné du signal d'horloge, par exemple le niveau haut, tandis que le verrou SL 402 devient transparent sur le niveau inverse du signal d'horloge, par exemple le niveau bas. L'association de deux verrous qui deviennent transparents sur des niveaux différents du même signal d'horloge donne naissance à une bascule (désignée par le symbole « FF »), c'est-à-dire un élément séquentiel qui capture une donnée en entrée sur le front (montant ou descendent) du signal de l'horloge. Le verrou ML 412 de l'élément séquentiel fantôme comprend une entrée pilotée par le signal SI et une sortie reliée à la sortie de l'élément séquentiel fantôme 310.

La porte logique 403 comprend:

- une entrée pilotée par le signal SE,

- une entrée reliée à la sortie de l'élément séquentiel fantôme 310,

- une entrée pilotée par le signal « reset_n », et

- une sortie reliée au verrou ML 401 .

Le verrou ML 401 comprend en outre trois entrées et une sortie incluant:

- une entrée reliée à la sortie de la porte logique 403,

- une entrée pilotée par le signal D, - une entrée pilotée par le signal SE, et

- une sortie reliée au verrou SL 402.

Le verrou SL 402 comprend en outre deux entrées et une sortie incluant:

- une entrée pilotée par le verrou ML 401 ,

- une entrée pilotée par le signal « reset_n »,

- une sortie qui pilote le signal Q.

La porte logique 403 est activée, c'est-à-dire qu'elle a un impact sur l'état de l'élément séquentiel système 300 seulement si :

- le signal de remise asynchrone à la valeur 0-logique « reset_n » est activé, ou

- si le dispositif 30 est en mode scan (c'est-à-dire lorsque le deuxième signal SE est activé) et que la sortie de l'élément séquentiel fantôme 310 prend la valeur 0-logique. L'état du verrou système ML 401 est remis à la valeur 0-logique de façon asynchrone si la porte logique 403 est activée. Le verrou système ML 401 est remis à la valeur 1 -logique de façon synchrone ou asynchrone si la porte logique 403 est inactivée et que le dispositif est en mode scan (i.e. lorsque le signal SE est activé). Il en résulte qu'en mode scan, si le signal « reset_n » est inactivé, l'état du verrou système ML 401 est remis à la valeur 1 - logique dès que l'état du verrou fantôme ML 412 prend la valeur 1 -logique et l'état du verrou système ML 401 est remis à la valeur 0-logique dès que l'état du verrou fantôme ML 412 prend la valeur 0-logique. Cette propriété permet le transfert du signal SI, à travers le verrou fantôme ML 412 à l'élément séquentiel système 300 en mode scan.

Dans un tel mode de réalisation, l'opération de remise asynchrone à la valeur 0-logique du verrou système ML 401 est prioritaire par rapport à l'opération de sa remise asynchrone à 1 -logique. Diverses implémentations au niveau transistor peuvent être utilisées pour mettre en œuvre cette règle de priorité.

Indépendamment de la valeur du signal SE, l'élément séquentiel système 300 peut être remis à la valeur 0-logique de façon asynchrone dès que le signal « reset_n » est inactivé. La Figure 4 représente un dispositif 30 adapté pour être utilisé comme verrou scan avec remise asynchrone à la valeur 0-logique, lorsque le signal « reset_n » est activé, selon un autre mode de réalisation de l'invention.

Dans cette forme de réalisation de l'invention, l'élément séquentiel système 300 comprend une structure similaire à la figure 3. Cependant, le verrou maître système 401 et le verrou esclave système 402 sont remplacés par un verrou système 404 et l'élément séquentiel fantôme 310 comprend un verrou maître fantôme 412 (également désigné par ML) et un verrou esclave fantôme 413 (également désigné par SL), et peut comprendre un transistor 31 1 pour déconnecter l'alimentation des verrous ML 412 et SL 413 en mode capture.

Le verrou fantôme ML 412 comprend en outre une entrée pilotée par le signal SI et une sortie reliée au verrou fantôme SL 413. Le verrou fantôme SL 413 comprend en outre une entrée pilotée par la sortie du verrou ML 412 et une sortie reliée à la sortie de l'élément séquentiel fantôme 310.

La porte logique 403 représentée sur la Figure 4 est similaire à la porte logique de la Figure 3 (également identifiée par la référence 403). Le verrou système 404 comprend en outre trois entrées et une sortie incluant:

- une entrée reliée à la sortie de la porte logique 403,

- une entrée pilotée par le signal D,

- une entrée pilotée par le signal SE, et

- une sortie qui pilote le signal Q.

Le verrou système 404 peut comprendre des portes logiques permettant de générer une impulsion (« puise » en langue anglo-saxonne) à partir d'un des fronts (montant ou descendants) du signal d'horloge reçu (non-représenté sur la Figure 4). Différentes méthodes de génération d'un tel « puise » peuvent être utilisées.

L'état du verrou système 404 est remis à la valeur 0-logique de façon asynchrone si la porte logique 403 est activée. Le verrou système 404 est remis à la valeur 1 -logique de façon synchrone ou asynchrone si la porte logique 403 est inactivée et que le dispositif est en mode scan (lorsque le signal SE est activé). Il en résulte qu'en mode scan, si le signal « reset_n » est inactivé, l'état du verrou système 404 est remis à la valeur 1 -logique dès que l'état du verrou fantôme SL 413 prend la valeur 1 -logique et l'état du verrou système 404 est remis à la valeur 0-logique dès que l'état du verrou fantôme SL 413 prend la valeur 0-logique. Cette propriété permet le transfert du signal SI, à travers les verrous fantôme ML 412 et SL 413 à l'élément séquentiel système 300 en mode scan.

Dans un tel mode de réalisation, l'opération de remise asynchrone à la valeur 0-logique du verrou système 404 est prioritaire par rapport à l'opération de sa remise asynchrone à 1 -logique. Différentes implémentations au niveau transistor peuvent être utilisées pour mettre en œuvre cette règle de priorité.

Indépendamment de la valeur du signal SE, l'élément séquentiel système 300 peut être remis à la valeur 0-logique de façon asynchrone dès que le signal « reset_n » est activé.

Dans d'autres formes de réalisation de l'invention, un cinquième signal de remise asynchrone à 1 -logique (noté « set ») peut être utilisé en parallèle ou en l'absence du signal « reset_n » de remise asynchrone à 0-logique. Dans la suite de la description, il sera considéré que le dispositif 30 utilise un le signal « set » en l'absence du signal « reset_n », à titre d'exemple non limitatif.

La Figure 5 représente un dispositif 30 qui peut être utilisé comme bascule scan avec remise asynchrone à 1 -logique, lorsqu'un tel signal « set » est activé, selon un autre mode de réalisation de l'invention. L'élément séquentiel système 300 représenté sur la figure 5 comprend un verrou maître système 501 (également noté « ML »), un verrou esclave système 502 (également noté « SL ») et une porte logique 503. L'élément séquentiel fantôme 310 comprend un verrou maître 412 (également appelé « verrou fantôme » et désigné par « ML ») et un transistor 31 1 pour déconnecter l'alimentation du verrou fantôme ML 512 en mode capture. Le verrou fantôme 412 comprend en outre une entrée pilotée par le signal SI et une sortie reliée à la sortie de l'élément séquentiel fantôme 310.

La porte logique 503 comprend:

- une entrée pilotée par le signal SE,

- une entrée reliée à la sortie de l'élément séquentiel fantôme 310,

- une entrée pilotée par le signal « set », et

- une sortie reliée au verrou ML 501 .

Le verrou ML 501 comprend en outre trois entrées et une sortie incluant:

- une entrée reliée à la sortie de la porte logique 503,

- une entrée pilotée par le signal D,

- une entrée pilotée par le signal SE, et

- une sortie reliée au verrou SL 502.

Le verrou SL 502 comprend en outre deux entrées et une sortie incluant: - une entrée pilotée par le verrou ML 501 ,

- une entrée pilotée par le signal « set »,

- une sortie qui pilote le signal Q. La porte logique 503 est activée, c'est-à-dire qu'elle a un impact sur l'état de l'élément séquentiel système 300 seulement si :

- le signal de remise asynchrone à la valeur 1 -logique « set » est activé, ou

- si le dispositif 30 est en mode scan (c'est-à-dire lorsque le signal SE est activé) et la sortie de l'élément séquentiel fantôme (310) prend la valeur 1 -logique.

L'état du verrou système ML 501 est remis à la valeur 1 -logique de façon asynchrone si la porte logique 503 est activée, et le verrou système ML 501 est remis à la valeur 0-logique de façon synchrone ou asynchrone si la porte logique 503 est inactivée et que le dispositif 30 est en mode scan. Il en résulte qu'en mode scan, si le signal « set » est inactivé, l'état du verrou système ML 501 est remis à la valeur 0-logique dès que l'état du verrou fantôme ML 412 prend la valeur 0-logique et l'état du verrou système ML 501 est remis à la valeur 1 -logique dès que l'état du verrou fantôme ML 412 prend la valeur 1 -logique. Cette propriété permet le transfert du signal SI, à travers le verrou fantôme ML 412 à l'élément séquentiel système 300 en mode scan.

Dans un tel mode de réalisation, l'opération de remise asynchrone à la valeur 1 -logique du verrou système ML 501 est prioritaire par rapport à l'opération de sa remise asynchrone à 0-logique. Diverses implémentations au niveau transistor peuvent être utilisées pour mettre en œuvre cette règle de priorité.

Indépendamment de la valeur du signal SE, l'élément séquentiel système 300 peut être remis à la valeur 1 -logique de façon asynchrone dès que le signal « set » est activé.

La Figure 6 représente un dispositif 30 adapté pour être utilisé comme verrou scan avec remise asynchrone à la valeur 1 -logique, lorsque le signal « set » est activé, selon un autre mode de réalisation de l'invention.

Dans cette forme de réalisation de l'invention, l'élément séquentiel système 300 comprend une structure similaire à la figure 5. Cependant, les verrous ML 501 et SL 502 sont remplacés par un verrou système 504 et l'élément séquentiel fantôme 310 comprend des verrous maître fantôme 512 (ML) et un verrou esclave fantôme 513 (SL) et peut comprendre un transistor 31 1 pour déconnecter l'alimentation des verrous ML 512 et SL 513 en mode capture.

Le verrou fantôme ML 512 comprend en outre une entrée pilotée par le signal SI et une sortie reliée au verrou fantôme SL 513. Le verrou SL 513 comprend en outre une entrée pilotée par le verrou ML 512 et une sortie reliée à la sortie de l'élément séquentiel fantôme 310.

La porte logique 503 représentée sur la Figure 6 est similaire à la porte logique 503 de la Figure 5.

Le verrou système 504 comprend en outre trois entrées et une sortie incluant:

- une entrée reliée à la sortie de la porte logique 503,

- une entrée pilotée par le signal D,

- une entrée pilotée par le signal SE, et

- une sortie qui pilote le signal Q.

Le verrou système 504 peut comprendre des portes logiques permettant de générer une impulsion (« puise ») à partir d'un des fronts (montant ou descendants) du signal d'horloge reçu (non-représenté sur la Figure 6). Différentes méthodes de génération d'un tel « puise » peuvent être utilisées.

L'état du verrou système 504 est remis à la valeur 1 -logique de façon asynchrone si la porte logique 503 est activée, et le verrou système 504 est remis à la valeur 0-logique de façon synchrone ou asynchrone si la porte logique 503 est inactivée et que le dispositif 30 est en mode scan. La conséquence est qu'en mode scan, si le signal « set » est inactivé, l'état du verrou système 504 est remis à la valeur 0-logique dès que l'état du verrou fantôme SL 513 prend la valeur 0-logique et l'état du verrou système 504 est remis à la valeur 1 -logique dès que l'état du verrou fantôme SL 513 prend la valeur 1 -logique. Cette propriété permet le transfert du signal SI, à travers les verrous fantôme ML 512 et SL 513, à l'élément séquentiel système 300 en mode scan.

Dans ce mode de réalisation, l'opération de remise asynchrone à la valeur 1 -logique du verrou système 504 est prioritaire par rapport à l'opération de sa remise asynchrone à 0- logique. Une telle règle de priorité peut être mise en œuvre par diverses implémentations au niveau transistor. Indépendamment de la valeur du signal SE, l'élément séquentiel système 300 peut être remis à la valeur 1 -logique de façon asynchrone dès que le signal « set » est activé.

Le dispositif 30 représenté sur les figures 3, 4, 5, 6 peut comprendre tout type de combinaisons de transistors ou de portes logiques adaptées pour réaliser les conditions précédentes. L'invention n'est pas non plus limitée à des types particuliers de transistors, de portes, ou d'interconnexions entre ces éléments pour réaliser les conditions ci-dessus.

De manière générale, l'invention n'est pas limitée aux modes de réalisation décrits ci- avant à titre d'exemple non limitatif. Elle englobe toutes les variantes de réalisation qui pourront être envisagées par l'homme du métier. En particulier, elle n'est pas limitée à un nombre ou type ou agencement particulier de portes et de transistors pour réaliser les conditions ci-dessus. En outre, elle peut s'appliquer en variante à des bascules système qui changent leur état sur le front descendant du signal d'horloge ou à des verrous système qui deviennent transparents sur le niveau bas du signal d'horloge ou à des encodages différentes des modes capture et scan.

Par ailleurs, bien que les modes de réalisation de l'invention ci-dessus aient été décrits à partir de certaines définitions des notions d'action/inactivation des signaux, l'homme du métier comprendra aisément que l'invention s'applique également aux formes de réalisation où les notions d'activation/inactivation des signaux (notamment SE, reset_n, set) sont définies avec des valeurs logiques différentes.