par Caaliph ANDRIAMISAINA, Catherine DEZAN

Slides:



Advertisements
Présentations similaires
de l’algorithme de Viterbi
Advertisements

La Méthode de Simplexe Standardisation
Chaîne de Synthèse Réel Modélisation Rendu Image Fichier Scène
Soutenance du stage de DEA.
Tris.
FORMATION DE FAISCEAU.
Architecture de machines Codage des informations
« Systèmes électroniques »
Génie Logiciel 2 Julie Dugdale
ARCHITECTURE INTERNE d’un MICROPROCESSEUR
Classification et prédiction
Affichage interactif, bidimensionnel et incrémental de formules mathématiques Hanane Naciri et Laurence Rideau INRIA Sophia Antipolis CARI'2000.
LIRMM 1 Journée Deuxièmes années Département Microélectronique LIRMM.
PRINCIPE SIMPLIFIE DE LA COMPRESSION MP3
Introduction à l’Algorithmique
Calculs de complexité d'algorithmes
ACTIVITES Le calcul littéral (3).
Addition de nombres relatifs
En quoi consiste la modulation d’amplitude ?
Les opérateurs combinatoires
Le codage de l ’information
Les circuits séquentiels
Le jeu d ’instructions Introduction Un jeu d ’instruction classique
Dpt. Télécommunications, Services & Usages Théorie de l information H. Benoit-Cattin Introduction 2. Sources discrètes & Entropie 3. Canaux discrets.
Ecriture simplifiée d'une somme de relatifs
Yann SEMET Projet Fractales, INRIA Rocquencourt
Modélisation et commande hybrides d’un onduleur multiniveaux monophasé
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
Tests et Validation du logiciel
Construction de Box-Plot ou diagrammes en boîtes ou boîtes à moustaches Construire une boîte à moustaches …
Sélection automatique d’index et de vues matérialisées
Améliorer les performances du chiffrage à flot SYND
Cours Systèmes logiques
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Des RRA à la diagnosticabilité
Eléments d ’algèbre relationnelle
Institut TELECOM / TELECOM Bretagne
Application des algorithmes génétiques
Auto-organisation dans les réseaux ad hoc
Expressions et assignations
Les algorithmes: complexité et notation asymptotique
Bibliothèque standard du C++
DeltaPROD Suivi des interventions Gestion de configuration
Cryptographie Réalisé par TOUJENI Noura BEN SOUISSI Rania KARAOUD Imen
Patterns et maintenabilité dans lindustrie : un cas concret Christophe Saint-Marcel Silicomp Ingénierie.
Implémentation analogique de décodeurs correcteurs d’erreurs
Journée des Doctorants SC
Optimisation et parallélisation de code pour processeur à instructions SIMD multimedia François Ferrand.
1.Un rang de données multicolores 2. Deux permutations des n premiers entiers 3. b permutations des k premiers entiers 4. Choix de n points dans [0,1]
Algèbre linéaire (GCI –100)
Courbes de Bézier.
Les expressions algébriques
Détection du meilleur format de compression pour une matrice creuse dans un environnement parallèle hétérogène Olfa HAMDI-LARBI.
Les Algorithmes de Tri Introduction Tri par Sélection
D. Duret / Présentation Cappi Z

1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
Chapitre 3 Simulation de Fautes
Processeurs et chemins des données
Architecture Chapitre 4 Interruptions. 2 Plan Principe Schéma d’acquisition Les états d’une interruption Décentralisation des interruptions Exemples.
Advanced Boolean Equation Language
Numération cycle 3 : du nombre entier aux nombres décimaux
Les Matrices Une matrice est un arrangement rectangulaire de nombres disposés en rangées et colonnes T = T est une matrice de 3.
Supports de formation au SQ Unifié
Les Codes Spatio-Temporels Correcteurs d’Erreurs
Détection multi-utilisateurs pour un réseau de modems sous- marins discrets Karim Ouertani Département Signal et Communications Séminaire des doctorants.
Décodage souple de l’image binaire des codes de Reed-Solomon
Codes cycliques Hypothèse sur V = vocabulaire source Code linéaire - caractérisation Codage et décodage d’un code linéaire Code cyclique – caractérisation.
Compression de données de test : Réduction du nombre de broches et gain en temps de test Julien DALMASSO, Marie-Lise FLOTTES, Bruno ROUZEYRE {dalmasso,
1 Objectifs Apprendre la structure de quelques circuits combinatoires souvent utilisés ( demi additionneur, additionneur complet,……..). Apprendre comment.
Transcription de la présentation:

Synthèse abstraite d’éléments de turbo décodeur en bloc pour un circuit reconfigurable par Caaliph ANDRIAMISAINA, Catherine DEZAN Christophe JEGO, Bernard POTTIER Laboratoires Architectures et Systèmes LESTER-UBO et TAMCIC ENST-Bretagne

Motivation Modéliser 2 blocs d’un turbo décodeur BCH étendu (128,120,4) Avoir un gain en compléxité et en temps de conception Exploiter l’utilisation des corps de Galois

Plan Turbo code en bloc Madeo Modélisation et synthèse de 2 fonctions du turbo décodeur en bloc BCH (128,120,4)2

Turbocode Construits par concaténation de 2 codes élémentaires Gain de codage de 2 à 4 dB par rapport aux codes correcteurs d’erreurs classiques Dans le cas des turbo codes en bloc, les codes concatenés sont des codes de types BCH ou RS Construction d’un code BCH à partir des éléments du corps de Galois

Principe de décodage Décodage reposant sur un processus itératif Décodage des lignes suivi des décodages des colonnes à l’aide d’un décodeur élémentaire EPSP Le décodeur élémentaire prend en entrées le mot d’information du décodage précédent et le mot reçu Décodage des colonnes (demi-itération) Décodage des lignes (demi-itération) Matrice reçue Reconstruction de la matrice Décodeur Delay + * R'k Rk Dk Fk - Wk R'k+ 

Algorithme de décodage d'un turbocode en bloc BCH(128,120,4)2 Réception du mot R’k : 1 bit de signe et 4 bits de fiabilités Recherche des symboles les moins fiables: 5 symboles les moins fiables parmi les 128 symboles Construction des 16 vecteurs tests: à partir des inversions de bits les moins fiables Calcul du syndrome du 1er vecteur de test Calcul des syndromes pour les 15 autres vecteurs de test Correction des 16 vecteurs de test Calcul des métriques: distance euclidienne entre 2 mots Séléction du mot décidé et des mots concurrents Calcul de la nouvelle fiabilité de chacun des symboles du mot Calcul de l'information extrinsèque: apportée par le décodeur Addition avec le mot reçu du canal

MADEO: chaîne de CAO pour les architectures reconfigurables Outil générique permettant de modéliser une architecture quelconque de FPGA Outils basiques: placement-routage/floor-planner/éditeur Deux parties: Madeo-FET/Madeo-BET

Flot de MADEO Madeo-FET Madeo-BET

Spécifications de l’application dans MADEO Description initiale en Smalltatlk de l’application Codes génériques pouvant s’utiliser avec des contextes différents: entiers, flottants, matrices, … Exemple: addprod: x with:y ^x*2 + (y*3) x et y peuvent être des entiers, flottants

Modélisation du corps de Galois GF(2n) Eléments pouvant être représentés par des polynômes de degré n-1. Addition/soustraction modélisées en ou-exclusif Multiplication/division utilisent des tables de logarithmes les transformant en addition/soustraction Création d’une classe génératrice des corps de Galois GF(2n)

Modélisation du syndrome Transformation de l’équation du calcul de syndrome: α: éléments du corps de Galois GF(128) de polynôme générateur r’j: les bits du mot reçu n: nombre de bit de découpage k: niveau d’hiérarchie 2 types de modélisations étudiées en fonction de k: Modélisation à plat pour k=1 Modélisation hiérarchique pour k>1

Exemple: Modélisation à plat k=1 et n=4 0 1 2 3 4 5 6 7 123 124 126 127 motRecu: syndrome + …………...

Modélisation d'une somme partielle motRecu: r a0:a0 a1:a1 a2:a2 a3:a3 | r0 r1 r2 r3 syndrome | syndrome:= MonGF128 on: 0. r0:= (r bitAnd: 2r1000)~=0. r1:= (r bitAnd: 2r0100)~=0. r2:= (r bitAnd: 2r0010)~=0. r3:= (r bitAnd: 2r0001)~=0. r0 ifTrue: [syndrome:=syndrome + a0]. r1 ifTrue: [syndrome:=syndrome + a1]. r2 ifTrue: [syndrome:=syndrome + a2]. r3 ifTrue: [syndrome:=syndrome + a3]. ^syndrome éléments du corps de Galois GF(128) entrée sur 4 bits S1 motRecu: 0 1 2 3

Modélisation de la recherche des 5 symboles les moins fiables 2 types de comparaisons étudiées: Type arbre arborescent: Plusieurs blocs de comparaison appelés dans chaque niveau Chaque bloc de comparaison prenait en entrée des fiabilités et leurs positions associées Type tri à bulles: La comparaison se fait en poussant, vers la sortie par permutations successives, la plus petite valeur parmi les entrées

Modélisation d'un bloc de comparaison Modélisation en Smalltalk: v1:v1 pos1:pos1 v2:v2 pos2:pos2 v1>v2 ifTrue :[^Array with:v2 with:pos2] ifFalse :[^Array with:v1 with:pos1] v pos 0 1 2 3 4 5 6 7 123 124 126 127 .

Optimisations et Synthèse On a utilisé l’inférence de type simple avec les optimisations suivantes: propagation des constantes suppression des codes morts no-op removal Pour la synthèse, on a utilisé des architectures 4-LUT à une sortie

Résultats fonctions Modélisations Découpages (bits) Temps d’optimisation et de synthèse Nombres de LUT Syndrome plat 2 (k=1,n=2) 2 mn 10 s 424 4 (k=1,n=4) 10 mn 217 8 (k=1,n=8) 2 h 23 mn 502 hiérarchique 2 (k=8,n=2) 12 h 08 mn 725 4 (k=4,n=4) 13 h 30 mn 2311 Fiabilité plat : arbre arborescent 2 (n=2) - 4117 plat : tri à bulles 5234

Comparaison avec l’ENSTB Modélisation en SystemC dans CoCentric System Studio Pour le calcul de syndrome, l’ENSTB a adopté un traitement parallèle des mots reçus. Pour la fiabilité, un traitement complètement séquentiel

Conclusions La réduction de complexité dans Madéo est due essentiellement aux optimisations de haut niveau Le gain pour le calcul de syndrome est surtout obtenu par propagation des éléments du corps de Galois Les types d’applications à gros calculs offrent un contexte favorable d’utilisation de Madéo.

Perspectives Appliquer le même mode de traitement sur d’autres applications en télécommunications Implémenter les autres blocs du turbo décodeur