techniques de compression de données de test
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 PresentationTRANSCRIPT
![Page 1: Techniques de compression de données de test](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/7.jpg)
Fonctionnement
![Page 8: Techniques de compression de données de test](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/9.jpg)
Bits Indéterminés (X)
1X0011XXX00XXXX1X001
Détermination selon la technique
Run Length:
10001100000000010001
![Page 10: Techniques de compression de données de test](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/18.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/19.jpg)
Encodage par Entropie
• Codage de Golomb
• Codage de Huffmen
• Codage 9C
• Codage arithmétique
![Page 20: Techniques de compression de données de test](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/20.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/21.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/22.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/23.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/24.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/25.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/26.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/27.jpg)
Codage 9C
Mohammad Tehranipoor « Test Data Compression »
![Page 28: Techniques de compression de données de test](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/28.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/29.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/30.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/31.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/32.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/33.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/34.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062314/5681389d550346895da0518c/html5/thumbnails/35.jpg)
Question?