480 likes | 597 Views
Design d’un codeur-décodeur chaotique auto-synchronisant en temps réel et en présence de bruit. Jean-Philippe Mangeot - Frédéric Launay - Sébastien Cauet - Patrick Coirault. Laboratoire d’Automatique et d’Informatique Industrielle-POITIERS. ENSEA, GdR MACS 18/12/2008. Objectifs.
E N D
Design d’un codeur-décodeur chaotique auto-synchronisant en temps réel et en présence de bruit Jean-Philippe Mangeot - Frédéric Launay - Sébastien Cauet - Patrick Coirault Laboratoire d’Automatique et d’Informatique Industrielle-POITIERS ENSEA, GdR MACS 18/12/2008
Objectifs Implantation d’un codeur-décodeur chaotique auto synchronisant en présence de bruit. • Encodage et Décodage temps réel • Débit de 10 MChips/sec
PLAN • Contexte de transmission • Observateur d’état par estimation ensembliste • Quelles sont les ressources disponibles? • Optimiser ces ressources : Vers un algorithme génétique
SOMMAIRE • Contexte de transmission • Observateur d’état par estimation ensembliste • Quelles sont les ressources disponibles? • Optimiser ces ressources : Vers un algorithme génétique
Objectifs 5 Implantation d’un codeur-décodeur chaotique auto synchronisant en présence de bruit. Encodage et Décodage temps réel Débit de 10 MChips/sec
Structures AR Equations d’état du système chaotique
Structures AR Diagramme de bifurcation pour un système AR d’ordre 2, modulo 256 G1 variant de -1 à 4 G2= -1
Sans redondance -Bonjour, dit le petit prince. -Bonjour, dit l'aiguilleur. -Que fais-tu ici? dit le petit prince. -Je trie les voyageurs, par paquets de mille, dit l'aiguilleur. J'expédie les trains qui les emportent.
Sans redondance -Bonjour, dit le petit prince. -Bonjour, dit l'aiguilleur. -Que fais-tu ici? dit le petit prince. -Je trie les voyageurs, par paquets de mille, dit l'aiguilleur. J'expédie les trains qui les emportent. onjour, dit le petit prince. -Bonjour, dit l'aiguilleur. -Que fais-tu ici? dit le petit prince. -Je trie les voyageurs, par paquets de mille, dit l'aiguilleur. J'expédie les trains qui les emportent.
Avec redondance (x10) -Bonjour, dit le petit prince. -Bonjour, dit l'aiguilleur. -Que fais-tu ici? dit le petit prince. -Je trie les voyageurs, par paquets de mille, dit l'aiguilleur. J'expédie les trains qui les emportent.
Avec redondance (x10) -Bonjour, dit le petit prince. -Bonjour, dit l'aiguilleur. -Que fais-tu ici? dit le petit prince. -Je trie les voyageurs, par paquets de mille, dit l'aiguilleur. J'expédie les trains qui les emportent. -Bonjour, dit le petit prince. -Bonjour, dit l'aiguilleur. -Que fais-tu ici? dit le petit prince. -Je trie les voyageurs, par paquets de mille, dit l'aiguilleur. J'expédie les trains qui les emportent.
SOMMAIRE • Contexte de transmission • Observateur d’état par estimation ensembliste • Quelles sont les ressources disponibles? • Optimiser ces ressources : Vers un algorithme génétique
Observateur d’état par estimation ensembliste • Avec des circuits de Frey: Idée : Retrouver analytiquement l’ensemble des antécédents possible à chaque symbole reçu : 1 195 195 Sn-1 97 Sn 0 La fonction est surjective, il existe 256 couples (Sn-1,Sn-2) antécédents possibles pour chaque symbole reçu Sn-2
Observateur d’état par estimation ensembliste • Avec des circuits de Frey: linéarisation par morceaux S(n-1)=S(n)-2S(n-2)-carry si S(n-1) + 2S(n-2) + carry < 2N -1 S(n-1)=S(n)-2S(n-2)-carry si 2N -1< S(n-1) + 2S(n-2) + carry < 2N+1 -1 S(n-1)=S(n)-2S(n-2)-carry si S(n-1) + 2S(n-2) + carry > 2N+1 -1
Observateur d’état par estimation ensembliste • Avec des circuits de Frey: Les premières itérations de l’algorithme ensembliste N-2 N N+1 N-1 50
Observateur d’état par estimation ensembliste • Avec des circuits de Frey: Les premières itérations de l’algorithme génétique. N-2 N N+1 N-1 50 105
Observateur d’état par estimation ensembliste • Avec des circuits de Frey: Les premières itérations de l’algorithme génétique. N-2 N N+1 N-1 50 84 105
Estimation ensembliste des conditions initiales • Avec des circuits de Frey: Les premières itérations de l’algorithme génétique. N-2 N N+1 N-1 50 84 105
Estimation ensembliste des conditions initiales • Avec des circuits de Frey: Les premières itérations de l’algorithme génétique. N-2 N N+1 N-1 50 222 84 105
Estimation ensembliste des conditions initiales • Avec des circuits de Frey: Les premières itérations de l’algorithme génétique.
Estimation ensembliste des conditions initiales • Avec des circuits de Frey: Les premières itérations de l’algorithme génétique.
Estimation ensembliste des conditions initiales • Avec des circuits de Frey: Les premières itérations de l’algorithme génétique.
Observateur d’état par estimation ensembliste • Avec des circuits de Frey: Résultats avec un bruit de +-100 LSB
Estimation ensembliste des conditions initiales • Au fur et à mesure, les séquences candidates qui « sortent» sont éliminées
Estimation ensembliste des conditions initiales • Au fur et à mesure, les séquences candidates qui « sortent» sont éliminées
Méthode 3: Estimation des conditions initiales • Avec des circuits de Frey: Résultats avec un bruit de +-100 LSB (SNR=2.45dB) • Pendant les 5 premières itérations, la population de couples à traiter est supérieure à 10.000. Evolution du cardinal des séquences possibles en fonction du nombre d’itérations
Estimation ensembliste des conditions initiales • Avantages: • Pas de restriction sur les conditions initiales • Possibilité d’ intégrer plusieurs utilisateurs • Algorithmes faciles à implanter pour des applications temps réel. • Inconvénients: • Obligation de travailler sur un bruit borné • Nombre de ressources s’accroit exponentiellement en fonction du niveau de bruit.
PLAN • Contexte de transmission • Observateur d’état par estimation ensembliste • Quelles sont les ressources disponibles? • Optimiser ces ressources : Vers un algorithme génétique
Contraintes dues à l’implantation • 2 principales contraintes pour l’implantation: • Il faut que l’algorithme respecte les contraintes de temps • Il faut que l’algorithme respecte les contraintes de place sur le composant
Contraintes dues à l’implantation En 1999, Deep-Crack aura mis 22 heures et 15 minutes pour trouver une clés parmi les 2^56 possibles de DES Possibilités testées : 90 milliards de clés par seconde Source: Cracking DES - Secrets of Encryption Research, Wiretap Politics & Chip Design
Structure du Codeur : Structure de Frey 32 s(k)=mod( s(k-1)+f (s(k-2)+e(k)) Avec G1=1 et G2=2 (Rotation circulaire) on trouve un générateur très compact d’un point de vue électronique
Contraintes dues à l’implantation: ce qui existe Chez ALTERA: DSP Development Board for Stratix II • 48000 Macro-Cellules
Implantation du codeur • Consommation • 157 ALUTs/48.352 (<1%)
Implantation du décodeur • Décision temps réel • Système de récupération d’horloge • Décalage et réplicas du codeur
Implantation du décodeur • Consommation pour 8 réplicas • Reconstitution horloge: 47 ALUs • 8 Réplicas: 8*53= 424 ALUs • Décision Temps réel: 111 ALUs • Autres: 116 ALUs • _____________________________ • 698 ALUs /48.352 (1.4%)
Implantation du décodeur A titre d’information : Coût d’un filtre de NYQUIST= 5127 cellules ( 100 coefficients représentés sur 16 bits, précision gardée en sortie du MAC de 35 bits) Fe=100Mhz Coût d’une PLL =de 200 à 2000 cellules VITERBI= 1000 cellules
Implantation du décodeur Ordre de grandeur: Il faut compter environ 100 cellules par réplica Ce qui laisse la possibilité d’implanter 256 réplicas en parallèle
Implantation du décodeur Synchro
SOMMAIRE • Contexte de transmission • Estimation ensembliste des conditions initiales • Quelles sont les ressources disponibles? • Optimiser ces ressources : Vers un algorithme génétique
Principe de l’algorithme génétique: estimer l’état du codeur Algorithme: Population de base: Critère de sélection:
Principe de l’algorithme génétique: estimer l’état du codeur Actualisation de la population:
Conclusion • Implantation d’un codeur décodeur auto synchronisant sur FPGA validée. • Travaux en cours • Algorithme de tri: Optimiser l’algorithme de sélection (tri) de la population en un coup d’horloge
Conclusion 46 • Implantation d’un codeur décodeur auto synchronisant sur FPGA validée. • Travaux en cours • Algorithme de tri: Optimiser l’algorithme de sélection (tri) de la population en un coup d’horloge
Méthode proposée: Le CSK généralisé 47 Clé 1 Clé 1 Générateur Chaotique 1 Générateurs inverses Message Information Clé 2 Clé 2 Générateur Chaotique 2 Générateurs inverses Détections de Cohérence Canal Clé N Clé N Générateur Chaotique N Générateurs inverses Restitution du message
Méthode proposée: Le CSK généralisé 48 Message Information dans l’état du générateur Symbole 1 Générateurs inverses Symbole 2 Générateurs inverses Détections de Cohérence Générateur Chaotique 1 Canal Symbole N Générateurs inverses Restitution du message