=== Module Archi pour le TNS === Cours 1 {{https://bvdp.inetdoc.net/files/iut/tp_tns/cours_Archi_TNS_intro5.odp}} ==== Déroulement du cours ==== 4h en 2 séances - Objectifs : - Savoir décrire une chaîne de traitement du signal (modélisation système) - Savoir choisir/utiliser une représentation des nombres et mettre en oeuvre les opérateurs associés - Savoir implémenter un filtrage 1D logiciel(gestion des données, structure algorithmique, organisation du calcul) - Savoir séquencer temporellement le calcul et garantir des contraintes temps-réel - Disposer de quelques éléments de dimensionnement pour le choix d'une architecture - Présentation d'une chaîne générique de traitement numérique du signal (cours 1) - acquisition - calcul - génération - interfaces de contrôle - Représentation des données (cours 1) - Virgule fixe - Opérateurs de calcul et problèmes associés (saturation, troncation) - Dimensionnement des types selon le calcul - Nombres flottants - simple, double, demi ... - problèmes du float - Traitement du signal logiciel (cours 1) - Sous interruption - Cadencé par les données - Stockage des données (buffer circulaire, fifo ...) - Temps réel ou non ... (latence, cadence) - en ligne - hors ligne - par bloc - Convertisseurs (DAC/ADC) - Bruit d'échantillonage - FIFO/DMA - Multiplexage - Implémentation matérielle pour le filtrage (Cours 2) - Chemin de données - Opérateurs et types - MAC - Multiplier (Cyclone) - Pipeline vs Séquentiel - Cadencement du calcul - Problèmes de domaine d'horloge ==== Déroulement du TD ==== 4h en 2 séances === TD 1=== - manipulation des nombres en virgule fixe - dimensionnement et application à une équation de récurence - Démarche de mise au point, ex: du filtre FIR (TD) Finalement pas dans le TD1: - Conception du filtre (génération des coefficients) - Compromis d'implémentation - Test unitaire - Tests de conformité par rapport à la "golden" reference - Qualité de la réponse filtre === TD 2=== - Spécificités de l'implémentation sur microcontroleur - Périphériques: - ADC - DAC - Timer - Interruptions - Dimensionnement de l'ALU et des éventuelles fonctions/instructions DSP - Dimensionnement des calculs en fonction des périphériques - Adéquation complexité du filtre/architecture du micro(DSP) ==== Déroulement du TP ==== 14h en 7 séances - Implémentation logiciel pur du filtre sous Qt (de merde) - TP1: - Générer des échantillons (pulse, sin) - Visualisation des données numériques en numéro d'échantillon - Premier filtre FIR (S(k) = E(k)) -> Fonction de recopie unitaire - Deuxième filtre Sk = E(k-r) (gestion de la file) - Echo - TP2: - Implémentation filtre FIR sur la base du TP1 en double précision et visualisation - Test de validité bourrin (affichage de la réponse impulse et module |H(f)| de la FdT) - Codage du FIR en virgule fixe - TP3: pt de synchro : Arduino - plug de la fonction filtre - vérification des aspects temps réel - it timer fournie - TP4: pt de synchro Nucleo **JOJO FAIT TOUT!!!!!!!!!!!!!!!!!!!!!** - TP5: - TP6: - TP7: