Techniques de compression de données de test

35
Techniques de compression de données de test Par Patrick Delisle Et Aziz El maghri ELE-6306 TESTS DE SYSTÈMES ÉLECTRONIQUES École Polytechnique de Montréal

description

ELE-6306 TESTS DE SYSTÈMES ÉLECTRONIQUES. Techniques de compression de données de test. Par Patrick Delisle Et Aziz El maghri. École Polytechnique de Montréal. Techniques de compression de données de test. Problématique Fonctionnement Prétraitement Technique de compression - PowerPoint PPT Presentation

Transcript of Techniques de compression de données de test

Page 1: Techniques de compression de données de test

Techniques de compression de données de test

Par Patrick Delisle

EtAziz El maghri

ELE-6306TESTS DE SYSTÈMES ÉLECTRONIQUES

École Polytechnique de Montréal

Page 2: Techniques de compression de données de test

Techniques de compression de données de test

1. Problématique

2. Fonctionnement

3. Prétraitement

4. Technique de compression

5. Choix d’un algorithme de compression

6. Conclusion

Page 3: Techniques de compression de données de test

Problématique

• Augmentation de la complexité des circuits

• Augmentation du volume de données de test

• Entraîne des coûts élevés pour les équipements de test automatiques (ATE)

Page 4: Techniques de compression de données de test

Coût ATE

• Nombre de plot connexion

• Mémoire pour emmagasiner les données de test

• Temps de test

Page 5: Techniques de compression de données de test

Solution

• Compression des données

– Réduction du volume de données

– Réduction du nombre de plot

Page 6: Techniques de compression de données de test

Règles à respecter

• Compression sans perte (réversible) Les vecteurs de test doivent être récupérable

• Facile à compresser & décompresser Pour ne pas augmenter le temps de test Limiter la complexité des parties à implémenter matériellement

• Requiert peu de surface sur le SOC

Page 7: Techniques de compression de données de test

Fonctionnement

Page 8: Techniques de compression de données de test

Prétraitement des Données

• les techniques qui préparent les données de test à être compressé

Les techniques étudiées Bits indéterminés

Barrow Wheeler transformation

Page 9: Techniques de compression de données de test

Bits Indéterminés (X)

1X0011XXX00XXXX1X001

Détermination selon la technique

Run Length:

10001100000000010001

Page 10: Techniques de compression de données de test

Burrows Wheeler Transformation

• Permet réorganisation des vecteurs

• Détermination d’une matrice n x n

• Rotation (n-1)

• Sort

Page 11: Techniques de compression de données de test

Burrows Wheeler TransformationMatrice

Vecteur 10010010

1 0 0 1 0 0 1 0

0 0 1 0 0 1 0 1

0 1 0 0 1 0 1 0

1 0 0 1 0 1 0 0

0 0 1 0 1 0 0 1

0 1 0 1 0 0 1 0

1 0 1 0 0 1 0 0

0 1 0 0 1 0 0 1

N = 8

N - 1 = 7

Page 12: Techniques de compression de données de test

Burrows Wheeler TransformationRéorganisation

0 0 1 0 0 1 0 1

0 0 1 0 1 0 0 1

0 1 0 0 1 0 0 1

0 1 0 0 1 0 1 0

0 1 0 1 0 0 1 0

1 0 0 1 0 0 1 0

1 0 0 1 0 1 0 0

1 0 1 0 0 1 0 0

Si on tri le dernier tableau on retrouve : Le nouveau vecteur

Vecteur initial

Position 6

Page 13: Techniques de compression de données de test

Burrows Wheeler Transformation Retour

R1 S R2 S R3 S R4 S R5 S

1 0 10 00 100 001 1001 0010 10010 00100

1 0 10 00 100 001 1001 0010 10010 00101

1 0 10 01 101 010 1010 0100 10100 01001

0 0 00 01 001 010 0010 0100 00100 01001

0 0 00 01 001 010 0010 0101 00101 01010

0 1 01 10 010 100 0100 1001 01001 10010

0 1 01 10 010 100 0100 1001 01001 10010

0 1 01 10 010 101 0101 1010 01010 10100

Pour retrouver le vecteur initial :

Le vecteur

Tri Tri

Ajout du vecteur initial (MSB)

Page 14: Techniques de compression de données de test

Burrows Wheeler Transformation Retour

R6 S R7 S R8 S

100100 001001 1001001 0010010 10010010 00100101

100101 001010 1001010 0010100 10010100 00101001

101001 010010 1010010 0100100 10100100 01001001

001001 010010 0010010 0100101 00100101 01001010

001010 010100 0010100 0101001 00101001 01010010

010010 100100 0100100 1001001 01001001 10010010

010010 100101 0100101 1001010 01001010 10010100

010100 101001 0101001 1010010 01010010 10100100

Vecteur initial à

La Position 6

Si on refait la même chose N fois, on retrouve le vecteur de test initial à la position

Page 15: Techniques de compression de données de test

Burrows Wheeler Transformation

• Permet meilleur adaptation des vecteurs

• Effectif sur série avec cycle

→ Pas toujours avantageux

000111 => 100110

Page 16: Techniques de compression de données de test

Techniques de Compression

• Compression Run-Length

• Encodage par Entropie Codage de Golomb

Codage de Huffmen

Codage 9C

Codage arithmétique

• Technique du dictionnaire

Page 17: Techniques de compression de données de test

Compression Run-Length

• Remplace des séquences par un code Séquence de « 0 » ou Séquence de « 1 »

• 2 méthodes1. On remplace chaque séquence par un «  flag» qui représente

le bit de la séquence, puis le nombre de fois que ça se répète.

2. On remplace ou bien la séquence des « 0 » ou la séquence des « 1 ».

• Avantage Logique minime

Page 18: Techniques de compression de données de test

Compression Run-Length

• Méthode 1

1111000000 → 1100 0110

10 bits 8 bits

Compression: 20%

• Méthode 2

0100000001 → 001 111

10 bits 6 bits

Compression: 40%

Exemple :

Page 19: Techniques de compression de données de test

Encodage par Entropie

• Codage de Golomb

• Codage de Huffmen

• Codage 9C

• Codage arithmétique

Page 20: Techniques de compression de données de test

Codage de Golomb

• Similaire à Run-Length

• Utilise code pour remplacer des « 0 »

• Divisé en groupe selon paramètre m

• Formé d’un préfixe et d’un suffixe

• Requiert une terminaison par « 1 »

Page 21: Techniques de compression de données de test

Codage de Golomb

A. Chandra, K. Chakrabarty « System-on-a-Chip Test-Data Compression and Decompression Architectures Based on Golomb Codes »

Page 22: Techniques de compression de données de test

Codage de Golomb

• Détermination de la compression

n: nombre de bit r: nombre de « 1 »

• Détermination du paramètre m

mrmr

m

nGmr

m

n 11loglog 22

02ln 2

m

rn

m

r

Page 23: Techniques de compression de données de test

Codage de Huffman

• Remplace une séquence par un code

• Longueur du code non fixe

• Remplace selon le poids de la séquence

• Aucun préfixe

Page 24: Techniques de compression de données de test

Codage de Huffman

Compression

Huffman: 28%

Selected: 19%

] A. Jas, J. Ghosh-Dastidar, Mom-Eng Ng, N. A. Touba « An Efficient test vector compression scheme using selective Huffman Coding »

Page 25: Techniques de compression de données de test

Codage de Huffman

A. Jas, J. Ghosh-Dastidar, Mom-Eng Ng, N. A. Touba « An Efficient test vector compression scheme using selective Huffman Coding »

Page 26: Techniques de compression de données de test

Codage 9C

• Remplace séquences par un code

• Utilisation de 9 code

• Séquence indéfinie

• Paramètre K à choisir

Page 27: Techniques de compression de données de test

Codage 9C

Mohammad Tehranipoor « Test Data Compression »

Page 28: Techniques de compression de données de test

Codage Arithmétique

• Basé sur le calcul d’entropie

• Utilisation de probabilité

• Donne meilleur longueur de code possible

Page 29: Techniques de compression de données de test

Technique du dictionnaire

• Banque de donnée

• Code de même longueur

• Statique ou dynamique

• Bit d’identification

Page 30: Techniques de compression de données de test

Technique du dictionnaire

• Séquences1 : 1 100012 : 0 01101 10011 01001

• Dictionnaire 10001 → 00010 11100 10101

• Autre0 01101 10011 01001 → 011011001101001

Compression: 27%

Page 31: Techniques de compression de données de test

Choix d’un Algorithme de Compression

• Comment choisir?

• Coût des tests

• Paramètres à vérifier

• Dépendance sur les données de test

Page 32: Techniques de compression de données de test

Taux de compression

• Compression– 20-70% Moyenne: 50-60%

• Réduction du temps de test– 20-70% Moyenne: 50-60%

Page 33: Techniques de compression de données de test

Conclusion

• Nécessité de la compression• Prétraitement

– Choix des X– Burrows Wheeler

• Technique– Run-Length– Entropie

• Golomb• Huffman• Codage 9C

– Technique du dictionnaire• Choix d’un algorithme

Page 34: Techniques de compression de données de test

Bibliographie• [1] M-L Flottes, R. Poirier, B. Rouzeyre « An arithmetic structure for test data horizontal compression »

Laboratoire de Montpellier 2004.• [2] I. Pomeranz, S. M. Reddy « Test data compression based on input-output dependance » IEEE transactions on

computer-aided design of integrated circuits and systems.Vol. 22 Oct. 2003• [3] A. Chandra, K. Chakrabarty « System-on-a-Chip Test-Data Compression and Decompression Architectures

Based on Golomb Codes » IEEE transactions on computer-aided design of integrated circuits and systems. Vol. 20 Mars 2001

• [4] T. J. Yamaguchi, D. S. Ha, M. Ishida, T. Ohmi « A method for compressing test data based on Burrows-Wheeler transformation » IEEE transactions on computer-aided design of integrated circuits and systems. Vol. 20 Mai 2002

• [5] A. Jas, J. Ghosh-Dastidar, Mom-Eng Ng, N. A. Touba « An Efficient test vector compression scheme using selective Huffman coding » IEEE transactions on computer-aided design of integrated circuits and systems. Vol. 20 Juin 2002

• [6] J. Rajski, J. Tyszer « Test Data Compression and Compaction for Embedded Test of Nanometer Technology Designs » IEEE 21st International conference on computer design, 2003.

• [7] Kedarnath J. Balakrishnan, Nur A. Touba « Relating Entropy Theory on Test Data Compression » Computer Engineering Research Center.

• [8] Armin Wurtenberger, Christofer S. Tautermann, Sybille Hellebrand « A Hybrid Coding Strategy fir Optimized Test Data Compression » University of Innsbruck Austria.

• [9] Paul Theo Gonciari, Bashir M Al-Hashimi, Nicola Nicolici « Test Data Compression: The System Integrator’s Perspective » University of Southampton, McMaster University, 2003.

• [10] Sherief Reda, Alex Orailoglu « Reducing Test Application Time Through Test Data Mutation Encoding » IEEE Proceedings of the 2002 Design, Automation and Test in Europe Conference and Exhibition , 2002.

• [11] Gang Zeng, Hideo Ito « X-Tolerant Test Data Compression for SOC with Enhanced Diagnosis Capability » The Institute of Electronics, Information and Communication Engineers, 2005.

Page 35: Techniques de compression de données de test

Question?