Test intégré de circuits analogiques par oscillation avec analyse de
Transcription
Test intégré de circuits analogiques par oscillation avec analyse de
ELE6306 – Tests de systèmes électroniques, Automne 2007 1 Test intégré de circuits analogiques par oscillation avec analyse de signature Mathieu Larouche, et Sébastien Ethier Département de génie électrique, École Polytechnique de Montréal Résumé—Cet article présente une technique de test pour les circuits analogiques. Il s’agit du test intégré par oscillation (OBIST). L’idée est de transformer, en mode test, le circuit sous test (CUT) en oscillateur. Les fautes ont, en général, un impact sur les caractéristiques de la sortie du CUT. Cette oscillation est par la suite traitée par un module d’analyse de signature. L’architecture exposée ici est basée sur un comparateur à multiplexage temporel (TDM). Elle permet d’obtenir des signatures simplement et avec une surface supplémentaire réduite. Ce système est enfin modélisé à l’aide de MATLAB et est appliqué à un filtre Sallen Key passe-haut afin de le valider et d’étudier ses diverses caractéristiques. Les résultats obtenus sont concluants et démontrent l’efficacité de l’OBIST avec analyse de signature. Mots clés—OBIST, comparateur TDM, test analogique. I. INTRODUCTION A LORS que le domaine du test de circuits numériques est dans un état plutôt mature, il en est tout autrement pour le test de circuits analogiques et mixtes. Ceci est dû à la complexité et à la spécificité de ce type de circuits électroniques. Effectivement, un circuit analogique traite des signaux continus ayant plusieurs paramètres fondamentaux (forme, amplitude, fréquence, phase, etc.), ce qui n’est pas le cas en numérique. Les caractéristiques à vérifier lors d’un test sont alors beaucoup plus nombreuses et difficiles à mesurer. Dans le même ordre d’idées, les vecteurs de test à appliquer au circuit sous test (CUT) sont également très nombreux et variés, ce qui se répercute par de longs temps de test et des coûts très élevés. Le taux de couverture des tests analogiques est souvent faible, puisque les vecteurs de test sont laborieux à définir et certaines fautes difficilement détectables. Chaque type de circuit analogique et mixte est étroitement lié à l’application pour laquelle il est conçu et doit souvent être testé en conséquence. Par exemple, un amplificateur n’est pas testé de la même façon qu’un convertisseur analogique-numérique. Il est donc délicat de généraliser des techniques de test analogique. De plus, il n’existe pas de modèle de fautes standardisé, entraînant une disparité entre les méthodes développées. Les valeurs des composants analogiques comportent inévitablement des tolérances dues à la fabrication. Il est ainsi nécessaire de déterminer des marges acceptables pour chaque élément, ce qui n’est pas le cas en numérique, où tout peut être ramené à une valeur binaire. Ces limites sont laissées au jugement des concepteurs de test, ce qui résulte en une prise de décision difficile au moment de déterminer si un circuit est fautif ou non. Un autre problème majeur des circuits analogiques et mixtes est qu’ils sont de plus en plus intégrés dans des systèmes sur puce (SoC). L’accès aux entrées et sorties d’un module analogique dans le but de le tester peut probablement être impossible sans l’ajout de broche au système, ce qui peut être problématique. Dans ce contexte, diverses solutions ont été proposées. Le test intégré (BIST) représente un ensemble de solutions intéressant puisqu’il enraye les problèmes d’accès au circuit et l’utilisation d’équipement de test coûteux. Cependant, générer des stimuli et analyser les réponses de manière interne est un défi de taille pour les concepteurs de test. Plus souvent qu’autrement, ces modules deviennent plus imposants que le CUT lui-même. Dans [1], on propose une architecture de BIST basée sur le principe de transformation du CUT en oscillateur et d’analyser la sortie de ce dernier. Un système amélioré et plus général, nommé oscillation-based built-in self test (OBIST), ou test intégré par oscillation, est présenté par [2] où il est également question de faire l’analyse de façon intégrée. Deux techniques d’analyse d’oscillation se démarquent du lot : une première utilisant un modulateur Σ∆ [3] et une seconde, plus simple, utilisant un comparateur à multiplexage temporel (TDM) [4]. Avec l’OBIST et une analyse de signature intégrée par comparateur TDM, aucun générateur n’est utilisé, puisque aucun vecteur n’est nécessaire. Il est alors question au cours de cet article de la technique de l’OBIST, ainsi que de l’analyse de signature intégrée par comparateur TDM. L’organisation du texte est la suivante. La Section II fournie les détails théoriques et techniques des méthodes étudiées. Par la suite, dans la Section III, des simulations sont effectuées et étudiées afin de démontrer la fonctionnalité du BIST pour un circuit simple qui n’a pas été testé dans la littérature. Les conclusions tirées de ses expérimentations sont énoncées dans la Section IV. II. OBIST ET ANALYSE DE SIGNATURE PAR COMPARATEUR TDM Dans cet article, pour tester le CUT, deux modules distincts sont présentés. Le premier, l’OBIST, permet de placer le ELE6306 – Tests de systèmes électroniques, Automne 2007 circuit dans un mode de test et le second, le comparateur TDM, sert à analyser les sorties produites par celui-ci. Ces modifications serviront à la production des circuits. Puisqu’elles doivent être intégrées au système, des étapes doivent être effectuées lors de la conception du design. Tout d’abord, on doit prendre un modèle sans faute et effectuer la suite de test désirée. Selon cette suite de tests, le TDM générera des signatures qui doivent être introduites dans le design final. Ces ajouts au circuit de base serviront à la validation de chacun des circuits produits. Le reste de cette section décrit d’une façon théorique les modules à ajouter à un CUT pour ce type de test : l’OBIST et le comparateur TDM. A. OBIST L’idée de base derrière le test intégré par oscillation est très simple. Comme son nom l’indique, le but est de modifier le circuit analogique afin d’en faire un oscillateur en mode test. Ainsi, il est possible vérifier l’intégrité de la majorité des composantes du circuit. Ceci permet d’offrir une bonne couverture sur l’ensemble des fautes du CUT sans vecteur de test ni générateur. Dans un circuit analogique, on peut retrouver différents types de fautes. Comme décrit dans [2] et [4], on peut les classer en deux catégories. La première consiste des fautes dites catastrophiques. Ces fautes catastrophiques affectent le circuit d’une façon extraordinaire et empêchent complètement le bon fonctionnement de celui-ci. Elles sont modélisées par des court-circuits et des circuits ouverts, respectivement représentés par une résistance faible, (1 Ω) en parallèle et une résistance importante (100 MΩ) en série avec un composant donné. En général, comme il est démontré dans la littérature, le taux de couverture pour de telles fautes est généralement très élevé. Le second ensemble de fautes est composé des fautes appelées paramétriques. Celles-ci sont définies comme des déviations de la valeur attendue des composants du CUT. Elles sont habituellement plus complexes à détecter puisqu’elles n’affectent pas le circuit d’une façon aussi évidente que la catégorie précédente. En effet, elles peuvent n’avoir que des effets minimes sur les oscillations, mais peuvent être, tout de même, problématiques lors du fonctionnement normal du circuit. Afin de détecter ces deux types de fautes, le CUT doit être modifié pour le placer en oscillation. Souvent, le circuit sous test doit être divisé en blocs, comme des amplificateurs opérationnels, des PLLs, des filtres, ou d’une combinaison des ces blocs, ce qui simplifie la conception de la circuiterie additionnelle. Cependant, la réalisation d’un oscillateur de ce type est différente de la conception d’un oscillateur standard, car toutes les fautes à détecter doivent idéalement avoir des répercussions sur les oscillations de sortie. Aucun circuit de stabilisation ne doit donc être utilisé. Pour mettre le CUT en oscillation, on déplace les pôles de sa fonction de transfert sur l’axe imaginaire. Ceci est habituellement réalisé à l’aide d’une boucle de rétroaction et d’un déphasage adéquat. 2 B. Analyse de signature La première étape pour concevoir ce bloc est de déterminer quelles caractéristiques des sorties doivent être analysées. Ainsi, en observant différents paramètres de l’oscillation, le taux de couverture des différentes fautes peut augmenter. Effectivement, plusieurs articles dans la littérature proposent seulement la fréquence comme paramètre d’analyse puisque celui-ci couvre une bonne partie des fautes. Néanmoins, analyser d’autres paramètres peut améliorer de façon significative le taux de couverture. De même, comme décrit brièvement plus tôt, les fautes paramétriques sont plus difficiles à détecter. C’est pourquoi d’autres caractéristiques du signal de sortie sont proposées pour augmenter le taux de couverture de ce type de faute. Dans [4], il est démontré que l’amplitude peut s’avérer efficace pour les fautes paramétriques. De plus, comme dans le domaine numérique, un problème d’observabilité peut être présent pour les circuits analogiques. En effet, certaines fautes n’ont pas d’impact direct sur l’oscillation de sortie. La solution pour mettre en évidence de telles fautes est très semblable à celle utilisée en numérique, c’est-à-dire, présenter des nœuds internes comme sorties du système sous test. La Fig. 1 présente les modules du bloc d’analyse de signature [4]. On peut voir que cette architecture comporte deux parties. Tout d’abord, un comparateur TDM est connecté à la sortie du CUT. Sa fonction est d’échantillonner la sortie du circuit sous test et de la comparer avec des tensions de référence. Ces valeurs sont multiplexées temporellement selon les phases d’horloge du système (φ1, φ2a ou φ2b). Selon les résultats de comparaison, lorsque la valeur de l’oscillation est supérieure à la tension de référence, un 1 est produit à la sortie, sinon un 0 est produit. Le second module est composé de compteurs qui sont chacun synchronisé sur une des horloges des références. À tour de rôle, les compteurs font le décompte des instants où la tension de sortie de l’OBIST est supérieure à leur référence respective. Ceci a pour effet de produire une signature caractéristique pour une durée de test donnée. Par la suite, celle-ci est comparée avec la signature déterminée pour le circuit sans faute. Une décision est alors prise pour juger le Fig. 1. Diagramme bloc de l’architecture globale du test intégré par oscillation avec analyse de signature par comparateur TDM. Tirée de [4]. ELE6306 – Tests de systèmes électroniques, Automne 2007 Fig. 2. Schéma détaillé du comparateur TDM. Exemple avec trois tensions de référence. Tirée de [4]. 3 circuits répertoriés à partir de leurs références ainsi que ceux testés par les auteurs inclut entre autres des amplificateurs opérationnels, des convertisseurs analogique-numérique, divers types de filtres (à variable d’état, Leapfrog, Sallen Key, Notch), des comparateurs et des circuits à capacités commutées. En ce qui attrait à l’analyse de signature avec comparateur TDM, il n’a été testé qu’avec différents filtres par [4], soit un filtre à variable d’état et un filtre Sallen Key passebas. Compte tenu de la variété de circuits déjà testée dans la littérature et de la contrainte de temps pour la réalisation du projet, il a été décidé de choisir un circuit simple comme CUT afin de s’assurer de pouvoir le tester à fond. C’est un filtre Sallen Key passe-haut qui a été retenu puisqu’il n’a pas été vérifié avec OBIST et comparateur TDM par les références consultées. La Fig. 4 représente le circuit de ce filtre. L’amplificateur opérationnel du circuit est considéré comme idéal. La fonction de transfert qui est utilisée dans le modèle est donnée par (1) et la fréquence de coupure du circuit par (2). Fig. 3. Les phases d’horloge utilisée pour l’analyse de signature. La phase φ1 correspond à l’oscillation, alors que les phases φ2 correspondent aux tensions de référence. Tirée de [4]. CUT comme fautif ou non. La Fig. 2 présente le schéma détaillé du comparateur TDM dans le cas où trois tensions de référence sont utilisées. Il est clair que l’oscillation du CUT, ainsi que les références sont échantillonnées en entrelacé selon les phases d’horloge illustrées à la Fig. 3. Sommairement, une tension de référence est échantillonnée et conservées dans la capacité C. Au cycle suivant, une valeur de l’oscillation y est soustraite. Cette différence est ensuite comparée à une tension fixe soigneusement choisie de manière à obtenir un 1 logique lorsque la valeur d’oscillation est supérieure à la référence précédente et un 0 logique dans le cas contraire. Cette séquence se répète pour chaque Vref pour la durée du test. La sortie du comparateur comprend alors, entre autres, des résultats de comparaison synchronisés sur leur phase d’horloge respective. Les compteurs arrivent alors à calculer les signatures puisque chacun d’entre eux est relié à une de ces horloges (φ2a, φ2b ou φ2c). III. RÉSULTATS EXPÉRIMENTAUX A. Architecture de test Dans le but d’étudier en profondeur et de vérifier la validité de la technique de test décrite précédemment, celle-ci est entièrement modélisée dans MATLAB et Simulink. Pour ce faire, un choix de CUT doit être fait. La littérature consultée fait état de divers circuits classiques pour lesquels la technique de l’OBIST a déjà été appliquée. Dans [2], l’ensemble des Fig. 4. Filtre Sallen Key passe-haut. Il s’agit du CUT utilisé lors des simulation de l’OBIST avec analyse de signature par comparateur TDM. s2 H (s) = s2 + fC = C1 + C2 1 s+ R2 C1C2 R1 R2 C1C 2 1 2π (R1 R 2 C1 C 2 ) (1) (2) Pour être en mesure de faire osciller le filtre passe-haut, une boucle de rétroaction comportant une fonction de transfert β(s), donnée par (3), est ajoutée au CUT pour déplacer les pôles de H(s) sur l’axe imaginaire. Une manière classique et rapide d’y arriver est que β(s) représente un circuit RC avec un certain gain. En observant la réponse de H(s) à une impulsion, il est facile de déduire le déphasage nécessaire pour amorcer une oscillation du CUT. Puis, le gain de β(s) doit être ajusté de manière à ce que l’oscillation soit stable. En effectuant cette procédure pour H(s), il est déterminé que β (s) = G 7,041221 = . sRC + 1 s (1× 10 3 )(100 × 10 − 9 ) + 1 (3) ELE6306 – Tests de systèmes électroniques, Automne 2007 4 TABLEAU I SIGNATURES POUR LES FAUTES CATASTROPHIQUES Fautes Fig. 5. Oscillation du CUT en mode test. L’oscillation ainsi obtenue à la sortie du CUT à une amplitude variant de 0,04134 V à -0,04127 V à une fréquence de 6452 Hz. Elle peut être observée à la Fig. 5. À l’aide du modèle du comparateur TDM sous MATLAB, il est dorénavant possible de simuler le CUT sans faute et d’obtenir les signatures correctes. Pour y arriver, certains paramètres du circuit d’analyse de signature doivent être établis. Dans un premier temps, les tensions de références, Vref1 et Vref2, doivent être précisées. Compte tenu des extremums de l’oscillation du CUT en mode test, celles-ci sont fixées à Vref1 = 0,039 V et Vref2 = -0,039 V. Dans un second temps, la fréquence d’horloge du système influe également sur les valeurs des signatures. Selon la fréquence d’oscillation du filtre passe-haut, une fréquence de 2 MHz, soit fφ1 = fφ2 = 1 MHz, est employée. Enfin, le CUT est testé pour une durée totale de 2 ms. Dans ces conditions, les signatures obtenues pour le CUT correct sont 259 et 1838, soit respectivement les valeurs du Compteur1 et du Compteur2. La prochaine étape est d’injecter des fautes pour chaque composant du circuit et de comparer les signatures résultantes avec les signatures du circuit sans faute. B. Simulation des fautes catastrophiques Les fautes catastrophiques sont d’abord considérées. Il n’y en a que huit, puisque chaque composant du CUT peut être en court-circuit ou en circuit ouvert. En ce qui a trait aux résistances, il suffit de remplacer leur valeur avec la résistance équivalente calculée à partir du modèle de fautes catastrophiques défini précédemment. Cependant, dans le cas des capacités, il est nécessaire de recalculer la fonction de transfert pour chaque faute. Le Tableau I énumère les signatures obtenues pour toutes les fautes catastrophiques. Celui-ci met en évidence le fait que chaque faute catastrophique entraîne une importante instabilité de l’oscillation. Dans un cas, l’oscillation s’emballe et l’amplitude augmente exponentiellement. Dans l’autre cas, l’oscillation est atténuée et l’amplitude tend vers une valeur nulle. De plus, les valeurs des signatures diffèrent de beaucoup des signatures du CUT correct. Toutes les fautes Commentaire a Compteur1 Compteur2 R1 court-circuit 996 1003 Vosc → ∞ R1 circuit ouvert 1 2000 Vosc → 0 R2 court-circuit 0 1999 Vosc → 0 R2 circuit ouvert 2000 2000 Vosc → ∞ C1 court-circuit 1995 2000 Vosc → ∞ C1 circuit ouvert 0 2000 Vosc → 0 C2 court-circuit 2000 2000 Vosc → ∞ C2 circuit ouvert 0 2000 Vosc → 0 a Les commentaires émis ici concerne la forme de l’oscillation. L’expression Vosc → ∞ signifie que l’oscillation est s’emballe et diverge. L’expression Vosc → 0 signifie que l’oscillation est s’atténue et tend vers 0. catastrophiques sont donc détectées. C. Simulation des fautes paramétriques Le second type de fautes possibles dans le domaine analogique est les fautes dites paramétriques. Celles-ci se trouvent à être des déviations de la valeur des composantes du circuit. Il est fondamental de pouvoir déterminer si ces variations sont acceptables pour être en mesure de juger le CUT comme fautif ou non. Afin de simuler ce type de fautes et de vérifier le taux de couverture de la technique de test, une hypothèse importante est proposée. On suppose qu’une seule valeur varie à la fois. Pour obtenir les signatures selon les déviations des composants du CUT, il est nécessaire d’effectuer une série de simulations pour chacun d’entre eux en modifiant la valeur de la faute entre chaque simulation. La Fig. 6 présente les courbes ainsi obtenues pour des variations maximales de ±10%. Les graphiques présentent la différence, en valeur absolue, de la signature par rapport à la signature du circuit correct selon la variation d’une composante. Il est possible de remarquer que la résistance R1 a un impact beaucoup moins important sur les signatures que les autres éléments du circuit. Les deux condensateurs, quant à eux, influent de manière très semblable. Il est à remarquer que les branches de gauche des courbes de la Fig. 6 (b) et (c) arrivent à un plateau. Ce comportement est dû au fait les signatures atteignent leur valeur maximale ou minimale, i.e. 2000 et 0, selon le cas. Les paramètres du comparateur TDM choisis plus tôt ne sont donc pas optimaux, la sensibilité du système pouvant être améliorée. Les courbes de la Fig. 6 permettront par la suite de déterminer les marges acceptables des signatures. Par contre, il faut trouver quel est l’effet réel de ces fautes sur le fonctionnement attendu du CUT. Dans (2), on voit que les quatre composantes du circuit ont exactement la même influence sur la fréquence de coupure. La Fig. 7 montre la fréquence de coupure en fonction des déviations sur l’une des résistances, soit R1. Enfin, pour déterminer les marges acceptables de variation ELE6306 – Tests de systèmes électroniques, Automne 2007 5 signatures pour la comparaison pourraient être tronquées et ainsi ne pas prendre en compte les fautes paramétriques mineures qui ne rendent pas le circuit fautif. IV. CONCLUSION (a) (b) (c) Fig. 6. Graphiques présentant l’effet des différentes composantes sur les signatures (a) R1 (b) R2 (c) C1 et C2 des signatures du circuit sous test, l’erreur acceptable sur la fréquence de coupure doit être déterminée. En utilisant cet écart, il est par la suite possible de décider quel pourcentage de variation des composantes est jugée convenable. Pour ce faire, la courbe de la Fig. 7 est utilisée. En ayant cet intervalle en main, les marges admissibles des signatures peuvent être trouvées grâce aux graphiques de la Fig. 6. Ainsi, les Une technique de test pour circuits analogiques a été détaillée. Celle-ci consiste à modifier le CUT pour qu’en mode test, ce dernier se comporte en oscillateur. En général, les fautes sur les composants du CUT entraînent une déviation des caractéristiques de l’oscillation. Afin de les mesurer et de pouvoir juger si un circuit est fautif ou non, un module d’analyse de signature est intégré à la sortie du CUT. L’architecture présentée est basée sur un comparateur TDM avec compteurs. Dans le but de valider le système proposé, celui-ci a été modélisé et simulé sous MATLAB et Simulink. Le CUT utilisé est un filtre Sallen Key passe-haut. Les avantages d’utiliser la technique dont il est question dans cet article sont nombreux. Premièrement, la surface supplémentaire est réduite par rapport à d’autres méthodes puisque aucun générateur de vecteurs n’est nécessaire entrée. De même, le circuit d’analyse de signature est petit et simple. Deuxièmement, le taux de couverture est élevé, surtout dû au fait que deux paramètres de l’oscillation sont considérés par les signatures, soit la fréquence et l’amplitude. Toutefois, à la lumière des résultats de simulation obtenus, certaines limites font surface. D’abord, la boucle de rétroaction de l’OBIST pour faire osciller le CUT utilisée lors des simulations n’est peut-être pas optimale. De plus, il est nécessaire de faire plusieurs itérations afin de déterminer les paramètres du module d’analyse de signature pour lui procurer la sensibilité désirée. Ainsi, tout masquage de fautes peut être évité et les marges des signatures peuvent être améliorées. Cette optimisation de l’analyse de signature n’a malheureusement pas été effectuée dû aux contraintes de temps. Malgré tout, il a été montré que la technique de l’OBIST avec analyse de signature par un comparateur TDM est efficace et prometteuse. REMERCIEMENTS Merci. RÉFÉRENCES [1] [2] [3] [4] Fig. 7. La fréquence de coupure par rapport à la valeur de la résistance R1. K. Arabi and B. Kaminska, “Oscillation Built-In Self Test (OBIST) Scheme for Functional and Structural Testing of Analog and MixedSignal Integrated Circuits”, in Proc. Int. Test Conf., 1997, pp. 786-795. S. R. Das et al., “Testing Analog and Mixed-Signal Circuits With BuiltIn Hardware – A New Approach”, in IEEE Trans. Intrum. Meas., vol. 56(3), Juin 2007, pp. 840-855. D. Vasquez et al. “On-Chip Evaluation of Oscillation-Based-Test Output Signals for Switched-Capacitor Circuits,” International Journal of Analog Integrated Circuits and Signal Processing, vol. 33( 2), pp. 201-211, Nov. 2002. J. Roh et J. A. Abraham, “A Comprehensive Signature Analysis Scheme for Oscillation-Test”, in IEEE Trans. Comput.-Aided Design, vol. 22(10), Octobre 2003, pp. 1409- 1423.