SlideShare una empresa de Scribd logo
1 de 44
Développement pour une plateforme
DSP
   Mise au point de l ’algorithme
       Prototypage, simulation haut-niveau
            Matlab
            Langage C sur PC
   Implémentation DSP
       Développement sur carte d'évaluation
            Langage C
            Cartes EVM, SDK
            Noyau temps-réel (DSP/BIOS)
       Optimisation des parties critiques
            Assembleur
       Outils de débogage
            Simulateur
            Émulateur
            Boundary scan JTAG (Norme IEEE 1179.1)
            Communication temps-réel avec un PC hôte

                                                        2
Développement pour un DSP

 Outils de           Compilateur      *.asm
conception    *.c
                         C



  IDE        *.asm   Assembleur       *.obj   *.lst



 Editeur
de Texte     *.cmd     Linker         *.out   *.map




                        Simulateur
                                              *.hex       DSP


                                          Chargement
                                          sur la cible


                                                                 3
C vs. assembleur
   Assembleur                             Langage C
       Langage bas-niveau                     Langage de plus haut-
            Fastidieux                         niveau
            Jeux d’instructions                    Plus rapide à coder
             complexes et irréguliers               Meilleure portabilité
            Spécifique à chaque               Code machine généré
             constructeur                       moins efficace
       Plus puissant                               Malgré l’optimisation par
            Accès direct à certains                 le compilateur
             registres inconnus du C           Outils de développement
       Nécessaire pour une                         Noyau temps-réel
        optimisation poussée                         (DSP/BIOS)
                                                    Configuration de la carte
                                                    Librairies de calculs
                                                     optimisées (DSPLIB)


                                                                                 4
Outils d'aide au développement

                  User Application

             Drivers


               DSP/BIOS™              Dsplib
     CSL     Kernel/Scheduler         Imglib


                                     CODEC
    Timer McBSP EMIF     CPU

            DSP                        DIP
                                     Switches
             Target Board

                                                5
CSL (Chip Support Library)
   Librairie pour faciliter         C67x™ DSP Modules
    l'utilisation des                CHIP
    périphériques internes du
                                     DAA
    DSP
   Plateformes C5000 et C6000       DAT
    Texas Instruments                DMA
   Accessible depuis le             EBUS
    langage C
                                     GPIO
   Organisation en modules          HPI
       Un module par périphérique   IRQ
                                     MCBSP
                                     PLL
                                     PWR
                                     UART
                                     WDTIM
                                                         6
Avantages d'une librairie de support
de type CSL
   Abstraction du matériel à travers une API logicielle
       Configuration
       Accès aux ressources
       Macros pour accéder au niveau des contenus de registres
   Intégré au noyau temps-réel DSP/BIOS
       Interface graphique CSL
   Facilitation du développement
       Méthodes standards d'accès aux périphériques
       Temps de développement réduit
       Programmation à plus haut-niveau
       Utile pour compenser l'augmentation de la complexité des
        processeurs et des applications



                                                                   7
Librairies spécialisées (DSPLIB, IMGLIB)

   Librairies de support pour le calcul
     Traitement  du signal ou des images
     Déjà programmées
     Optimisées
     Utilisables depuis le langage C
   Fonctionnalités de base
     FFT
     Filtrage
     Mathématiques        et trigonométrie
     Calcul   matriciel



                                              8
Propriétés des systèmes temps-réel
   Piloté par évènements
     Synchrones (chronomètre)
     Asynchrones (interruptions des E/S)
   Contraint dans le temps
       Contraintes dures (deadlines critiques)
       Contraintes souples (deadlines non critiques)
   Concurrence de l'exécution
     Contraintes sur plusieurs traitements en parallèle
     Nécessite un ordonnancement
            multi-tâches (plusieurs traitements à la fois)
            préemptif (toute tâche peut être interrompue par une tâche plus prioritaire)
   Déterministe et fiable
       Comportement du système prédictible
            Temps de réponse bornés




                                                                                            9
Système temps-réel DSP BIOS
   Noyau temps-réel
     Ordonnanceur   temps-réel
     Gestion multi-threads préemptive
   Outils d'analyse temps-réel
     Débogage     sans interruption de l'exécution
     Profiling, vision des threads
   Intégration avec
     Real-time data exchange (RTDX)
        Communication hôte↔DSP pendant l'exécution

     Chip   Support Library (CSL)



                                                      10
Stratification des traitements sous
DSP/BIOS
      Hard Real-time
                            1st-TIER
Interruptions matérielles     Traitement par échantillon
                              Réaction à la microseconde


                            2nd-TIER
Interruptions logicielles     Traitement par blocs
                              Réaction à la milliseconde



                              Traitements ordonnancés
      Multi-tâche             Exécution concurrente




  Tâche de fond (idle)        S'il reste du temps


      Soft Real-time
                                                            11
Mise en œuvre et implémentation de
         filtres RIF et RII




                                     12
Méthodologie d'implantation d'un filtre
   Étape 0 : Choix du filtre
        Choix du filtre et calcul des coefficients

   Étape 1 : Choix de structure
        Choix d'un schéma d'implantation
        Écriture des équations correspondantes
   Étape 2 : Choix algorithmiques
      Choix de l'implantation mémoire et des variables
      Écriture de l'algorithme
   Étape 3 : Choix numériques
        Choix du format Qk
        Écriture du programme

   Étape 4 : Validation
        Définir un protocole de test et l'appliquer
   Etape 5 : Optimisation


                                                          13
Étape 1 : Schéma et équations
  |H(f )|   pass-band                        stop-band

      1




                          fc : cut-of f f requency               fs/2       f (norm)
                                      (a)


  |H(f )|   pass-band   transition band        stop-band                |H(f )|
   (dB)                                                                 (linear)
     p                                                                 1     p

      0                                                                 1
                                                                        1         p

                                                     pass-band
     -3
                                                       ripple



                                                     stop-band
                                                       ripple
     s                                                                    s



                                                                 fs/2       f (norm)
                                 fs b : stop-band f requency
                              fc : cut-of f f requency
                            fpb : pass-band f requency
                                      (b)
Méthodes de synthèse d'un filtre


   Il existe de nombreuses méthodes
     Méthode  de la fenêtre
     Optimisation par moindres carrés
     Calcul des coefficients par approximation de
      tchebycheff
     Par TFD récursive
     etc.
Synthèse de filtres
Synthèse de filtre
Synthèse de filtre
Synthèse de filtre
Synthèse de filtre
Synthèse de filtre
Étape 1 : Schéma et équations

 Exemple sur une cellule RII du 2e ordre


     s          wn     b0
xn                          yn
                z-1
          -a1 w b1               wn  sxn  a1wn1  a2 wn2
               n-1

                z-1
                                 yn  b0 wn  b1wn1  b2 wn2
          -a2          b2
                                   Équations correspondantes
                wn-2
         Forme directe II

                                                               22
Étape 2 : Variables et algorithme
                                              Entrées :
       coefs             dbuffer               x (contient xn)
0        s         0      wn-1       w(n-1)    dbuffer (contient wn-1 et wn-2)
                                               coefs (contient les coefficients)
1        a1        1      wn-2       w(n-2)
                                              Variable temporaire :
2        a2            tableau des             w (recevra wn)
3        b2              retards
                                              Calcul
4        b1                                    wn ← s * xn – a1 * w(n-1) – a2 * w(n-2)
5        b0                xn        x         y ← b0 * wn + b1 * w(n-1) + b2 * w(n-2)
    tableau des                               Mise à jour retards
                        ? puis yn    y
    coefficients
                                               w(n-2) ← w(n-1)
                        ? puis wn    w         w(n-1) ← wn
                         variables            Sorties :
                       temporaires             y (reçoit yn)
                                               dbuffer (contient wn'-1 et wn'-2 pour n'=n+1)
         État de la mémoire
    lors de l'appel de la fonction
                                                                                               23
Étape 3 : Format Qk et programme C
                                               int coefs[6];
        x(n)       Q15                         int dbuffer[2];

        s          Q15                         int cellule(int x) {
        ai         Q15                           int w;
                                                 int y;
        bi         Q15
                                               /* Calcul */
        wk         Q15                         w=((long)coefs[0]*x
                                                  +(long)coefs[1]*dbuffer[0]
                                                  –(long)coefs[2]*dbuffer[1]) >> 15;
                                               y=((long)coefs[5]*w
                                                  +(long)coefs[4]*dbuffer[1]
Conversion algorithme (calcul sur des réels)      +(long)coefs[3]*dbuffer[0]) >> 15;
vers programme (calcul en format Qk)
                                               /* Mise à jour retards */
                                               dbuffer[1]=dbuffer[0];
           s*x                                 dbuffer[0]=w;
          devient
                                               /* Sortie */
    (coefs[0]*x)>>15                           return y;
  pour un résultat en Q15                      }



                                                                                   24
Étape 3 : Programme détaillé

   Si programmation       ACC=x(n)  s
    en assembleur,         ACC=ACC - a1  w(n-1)
    nécessité de           ACC=ACC - a2  w(n-2)
    décomposer en          w(n)=ACC>>15
                           ACC=w(n)  b0
    calculs élémentaires
                           ACC=ACC + b2  w(n-2)
     Algorithmedétaillé   ACC=ACC + b1  w(n-1)
     Conversion en        y(n)=ACC>>15
      assembleur           w(n-2)=w(n-1)
                           w(n-1)=w(n)




                                                   25
Implantation mémoire pour cellules en
cascade
            coefs                     dbuffer
                                 0    w1(n-1)
       0      s                                 cellule 1
                                 1    w1(n-2)
       1     a11
                                2+1   w2(n-1)
       2     a12
                                                cellule 2
                    cellule 1   2+2   w2(n-2)
       …     b12
       …     b11
       5     b10
      5+1    a21
      5+2    a22
       …     b22    cellule 2
             b21
             b20


                                                            26
Filtres RIF




Structure
         transverse
Implémentation par
  Buffer linéaire
  Buffer circulaire



                           27
Structures pour filtre RIF
    Structure transverse avec ligne à retard
                             y n   b0 xn   b1 xn  1  ....  bN 1 xn  N  1
                                                -1                -1                              -1
                      x(n)                  z                 z                               z



                                        b                 b                  b                              b
                                        0                 1                  2                                  N-1




                                                     +                   +                              +                 y (n)


    Structure en treillis (filtres adaptatifs)
                  y0(n)                                  y1(n)                       y2(n)                                   y3(n)
                                                     +                           +                                    +
               x(n)
                                   k1                                   k2                         k3

                                                         u1(n)                       u2(n)                                   u3(n)
                u0(n)        z-1                     +            z-1            +           z-1                      +



    yi(n) = yi-1(n) + ki ui-1(n) et ui(n) = k1 yi-1(n) + ui-1(n-1)
    avec y0(n)=u0(n)=x(n).                                                                                                           28
Structures pour filtre RIF

    Structures en cascade:
                              N 1       k  b  b z  1  b z  2  ... b              N  1
                     H z  
                                                                                                
                                 bk z                                                z         
                                                 0    1         2               N 1
                              k 0
                                                                                   
                                                                   N  1 z   N  1 
                                     b 1 b  2                  b           
                             b 1   1 z         2 z     ...                   
                               0 b              b                  b                 
                                     0            0                 0                
                                   M
                             b  1  b z  1  b
                                                            z 2 
                                                                  
                               0
                                 k 1      k ,1        k ,2      
  x(n)   b0                                                                                      y (n)
                                +                        +                                   +

              z -1                        z -1                             z -1
                        b 1,1                    b 2,1                             b   M,1
                                +                        +                                   +
              z -1                        z -1                             z -1
                        b 1,2                    b 2,2                             b   M,2




                                                                                                         29
Filtre RIF par structure transverse

   Deux aspects
     Mise     à jour de la mémoire
         A chaque réception d’une nouvelle donnée x(n)
     Calcul    du filtre
       ACCU=0
       for i=0 to N-1:
              ACCU ← ACCU + h(i)   x(n-i)
         Sortie de y(n)=ACCU




                                                          30
N 1
                                                       y n    bi xn  i 
Buffer linéaire                                                i 0



           Schéma "état mémoire"      Schéma de structure de filtre

                     x(n)                              y(n)
           xtab               xtab
     0    x(n-1)         0    x(n)       b0
     1    x(n-2)         1   x(n-1)      b1
           …             2   x(n-2)      b2
           …                   …         …
           …                   …         …
           …                   …         …
    N-2 x(n-N+1)       N-2 x(n-N+2)      bN-2
    N-1   x(n-N)       N-1 x(n-N+1)      bN-1
                             x(n-N)


            Mise à jour du buffer     Calcul de y(n)
                                                                             31
N 1
                                                               y n    bi xn  i 
Buffer circulaire                                                      i 0



                  Schéma "état mémoire"       Schéma de structure de filtre

                        x(n)                                          y(n)
        xtab                          xtab
  0    x(n-k+1)                0   x(n-k+1)     bk+1
  1       …                    1       …        …

       x(n-N+1)                    x(n-N+1)     bN-1

        x(n-N)             idx        x(n)      b0

 idx    x(n-1)                      x(n-1)      b1

        x(n-2)                      x(n-2)      b2
 N-2      …                N-2         …        …
 N-1    x(n-k)             N-1      x(n-k)      bk




              Mise à jour du buffer           Calcul de y(n)
                                                                                     32
Quantification des coefficients RIF

   Virgule fixe:                                     N 1

     B=16  bits pour h(i) , x(n-i) et y(n)   y n    hi xn  i 
                                                      i 0
     40 bits pour les accumulateurs

   Représentation Qk
     Coefficient     de magnitude maximale:
          hmax = max |h(i)|
     Nombre      de bits nécessaires pour la partie entière :
          BE = log2(hmax)
     Codage      Qk avec k = B – BE
          h(i) = round(h(i)/2k)



                                                                      33
Filtre RIF avec buffer circulaire en
assembleur
                                    N 1
                            y n    hi xn  i 
N       .set      32
; adr_x+d supposé chargé
                                    i 0
dans AR2                                                  Adresses       Contenu
STM     #(coef)+N-1, AR3        Adresses    Contenu       k = adr_x    x(n-N+d-1)
STM     #(adr_y), AR5
                                 i = coef    h(N-1)         ……             ……
                                  i +1       h(N-2)       k+d-1         x(n-N+1)
STM     #N, BK
STM     #1, AR0                   i+2        h(N-3)         k+d            x(n)
                                  ……          ……            ……             ……
RPTZ    A, #N-1                  i+N-1        h(0)          k+N         x(n-N+d)
MAC     *AR2+0%, *AR3-, A
                                Mémoire Programme           Mémoire Données

STH     A, *AR5                              Rmq: les log2(N) bits de poids faible
                                             de adr_x doivent être nuls



                                                                                  34
Exemple d’implémentation d’un filtre RIF en Q15

short fir_filter (short input)
{
int i;
short output;
int acc=0;
int prod;
R_in[0] = input;                 /* lire les valeurs des échantillons */
acc = 0;                          /* initialisation de l’acc à zéro*/
for (i=0; i<128; i++)
{
prod = (h[i]*R_in[i]);           /* Q.15 */
acc = acc + prod;                /* mise a jour des 32-bit de l’acc */
}
output = (short) (acc>>15);       /* mise en forme de l’output (16-bits) */
for (i=127; i>0; i--)            /* décalage des échantillons */
R_in[i]=R_in[i-1];
return output;
}
Filtres RII




Structures
          de filtres
Décomposition en élements simples
Problèmes de quantification


                                     36
Filtre RII
    Fonction de transfert rationnelle
                                   Q

                     N(z)
                                   bi z i
                                  i0
              H(z)                P
                     D( z )
                                1   ak z  k
                                    k 1

    Equation aux différences
                    Q              P
              yn   bi xni   ak ynk
                   i 0           k 1



                                                 37
Filtre RII – Pôles et zéros

   Zéros au numérateur
                                                   
              Q                      Q

              bi z  b0  1  zi z 1
             i 0
                           i

                                     i 0




   Pôles au dénominateur
                                                       
                     P                   P
             1   ai z   1  pi z 1
                                i

                    i 1               i 0



                                                            38
Forme directe I (ND)

                                           Q               P
                                     yn   bi xni   ak yn k
           b0
xn                              yn
     z-1                  z-1             i 0            k 1
           b1      -a1

     z-1           -a2    z-1
           b2
                                                          1
     z-1                  z-1            H ( z)  N ( z)
           b3      -a3                                   D( z )
                                         •Forme non canonique :
                                         •Nécessite Q+P mémoires
     z-1                  z-1
           bQ-1   -aQ-1


      Forme directe I (ND)


                                                                   39
Forme directe II (DN)

                    b0
xn                           yn
                                            1
        -a1
              z-1
                    b1            H ( z)         N ( z)
                                           D( z )
              z-1
        -a2         b2             •Forme canonique
                                   •Nécessite max(Q,P) mémoires
        -a3   z-1
                    b3



              z-1
      -aQ-1         bQ-1

     Forme directe II (DN)

                                                                  40
Forme directe II transposée
                   b0                    b0
xn                        yn   xn                                 yn
             z-1                                z-1
      -a1          b1                    b1           -a1

             z-1
      -a2          b2                           z-1
                                         b2           -a2

             z-1
      -a3          b3                           z-1
                                         b3           -a3



             z-1                                z-1
     -aQ-1         bQ-1                  bQ-1         -aQ-1


     Forme directe II               Forme directe II transposée
                                                                       41
Quantification des coefficients
                   b0
xn                        yn
      -a1
             z-1
                   b1               ak  ak  ak
             z-1
      -a2          b2


      -a3
             z-1
                   b3
                                    bk  bk  bk

                          Quantification d’un coef :
             z-1
     -aQ-1         bQ-1   aq = round(a*q)/q
                          avec un pas de quantification q=2-k
     Forme directe II

                                                                42
Quantification des coefficients
                       Q

         N(z)
                       bi z i
                      i0
H(z)           
                                                a k  a k  a k
                        P
         D( z )
                    1   ak z  k
                        k 1


Le dénominateur quantifié devient :
                                       Q 1         Q 1
                                                            
                           D  z   1   ak z  k   1  pl z 1   
                                       k 1          l 1

La fonction de transfert est donc perturbée.
Plus le degré du polynôme est élevé, plus la fonction
de transfert sera perturbée.


                                                                          43
Décomposition d’un filtre RII
        en sections du deuxième ordre
            choisies pour leur stabilité
            coefficients réels (racines conjuguées)

        Structure parallèle                                      Structure cascade
                         c0

                    b0  b1 z 1                               b0  b1 z 1  b2 z 2        b0  b1 z 1  b2 z 2
                                                          xn   1  a1 z 1  a2 z  2        1  a1 z 1  a2 z  2
                                                                                                                      yn
                1  a1 z 1  a2 z  2
xn                                                   yn
                    b0  b1 z 1
                1  a1 z 1  a2 z  2                     Factorisation

Expansion partielle                                              B( z )      N 1
                                                                                   1  bi 1 z 1  bi 2 z 2
                                                                         b0                 1
     B( z )        N 1
                            bi 0  bi 1 z 1                     A( z )      i  0 1  ai 1 z     ai 2 z  2
             c0                 1
     A( z )        i 0 1  ai 1 z     ai 2 z  2
                                                                                                                      44
Décomposition en cascade


x(n) s0                          s1                      s2                       s3 y(n)
                    H1                       H2                      H3


         B( z )      N 1
                          1  bi1 z 1  bi 2 z 2
                 b0               1          2
                                                    b0 H1 ( z ) H 2 ( z ) H 3 ( z )
         A( z )      i 0 1  ai1 z  ai 2 z



avec :                1  bi1 z 1  bi 2 z 2         et       s0 s1s2 s3  b0
           H i ( z) 
                      1  ai1 z 1  ai 2 z 2


                                                                                            45

Más contenido relacionado

La actualidad más candente

Exercices vhdl
Exercices vhdlExercices vhdl
Exercices vhdlyassinesmz
 
CM2 - Conversion Anlogique Numérique
CM2 - Conversion Anlogique NumériqueCM2 - Conversion Anlogique Numérique
CM2 - Conversion Anlogique NumériquePierre Maréchal
 
Systeme embarque td1
Systeme embarque td1Systeme embarque td1
Systeme embarque td1SinGuy
 
Généralités sur les périphériques du STM32
Généralités sur les périphériques du STM32Généralités sur les périphériques du STM32
Généralités sur les périphériques du STM32Hajer Dahech
 
Rappel de cours traitement de signal
Rappel de cours traitement de signalRappel de cours traitement de signal
Rappel de cours traitement de signalmanahil2012
 
Présentation Cdma, Multiplexage CDMA, principes de Code et cas d'exemple
Présentation Cdma, Multiplexage CDMA, principes de Code et cas d'exemplePrésentation Cdma, Multiplexage CDMA, principes de Code et cas d'exemple
Présentation Cdma, Multiplexage CDMA, principes de Code et cas d'exempleMax Benana
 
Data mining - Classification - arbres de décision
Data mining - Classification - arbres de décisionData mining - Classification - arbres de décision
Data mining - Classification - arbres de décisionMohamed Heny SELMI
 
Compte rendu tp automatique 1
Compte rendu tp automatique 1Compte rendu tp automatique 1
Compte rendu tp automatique 1hamdinho
 
chap3 numerisation_des_signaux
chap3 numerisation_des_signauxchap3 numerisation_des_signaux
chap3 numerisation_des_signauxBAKKOURY Jamila
 
STM32 F4 (PWM,SPI And ADC Test Examples)
STM32 F4 (PWM,SPI And ADC Test Examples)STM32 F4 (PWM,SPI And ADC Test Examples)
STM32 F4 (PWM,SPI And ADC Test Examples)Aymen Lachkhem
 
Lamini&farsane traitement de_signale
Lamini&farsane traitement de_signaleLamini&farsane traitement de_signale
Lamini&farsane traitement de_signaleAsmae Lamini
 
Tp 3 transmission de donné modulation d'amplitude,de fréquence et de phase
Tp 3 transmission de donné modulation d'amplitude,de fréquence et de phaseTp 3 transmission de donné modulation d'amplitude,de fréquence et de phase
Tp 3 transmission de donné modulation d'amplitude,de fréquence et de phasehamdinho
 
Traitement d'image sous Matlab
Traitement d'image sous Matlab  Traitement d'image sous Matlab
Traitement d'image sous Matlab Hajer Dahech
 
Programmation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communicationProgrammation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communicationECAM Brussels Engineering School
 

La actualidad más candente (20)

Exercices vhdl
Exercices vhdlExercices vhdl
Exercices vhdl
 
States machines (1)
States machines (1)States machines (1)
States machines (1)
 
CM2 - Conversion Anlogique Numérique
CM2 - Conversion Anlogique NumériqueCM2 - Conversion Anlogique Numérique
CM2 - Conversion Anlogique Numérique
 
Systeme embarque td1
Systeme embarque td1Systeme embarque td1
Systeme embarque td1
 
Généralités sur les périphériques du STM32
Généralités sur les périphériques du STM32Généralités sur les périphériques du STM32
Généralités sur les périphériques du STM32
 
Rappel de cours traitement de signal
Rappel de cours traitement de signalRappel de cours traitement de signal
Rappel de cours traitement de signal
 
chap5 modulations
chap5 modulationschap5 modulations
chap5 modulations
 
Présentation Cdma, Multiplexage CDMA, principes de Code et cas d'exemple
Présentation Cdma, Multiplexage CDMA, principes de Code et cas d'exemplePrésentation Cdma, Multiplexage CDMA, principes de Code et cas d'exemple
Présentation Cdma, Multiplexage CDMA, principes de Code et cas d'exemple
 
Data mining - Classification - arbres de décision
Data mining - Classification - arbres de décisionData mining - Classification - arbres de décision
Data mining - Classification - arbres de décision
 
Compte rendu tp automatique 1
Compte rendu tp automatique 1Compte rendu tp automatique 1
Compte rendu tp automatique 1
 
Traitement de signal 1
Traitement de signal 1Traitement de signal 1
Traitement de signal 1
 
chap3 numerisation_des_signaux
chap3 numerisation_des_signauxchap3 numerisation_des_signaux
chap3 numerisation_des_signaux
 
Transmission de signal
Transmission de signalTransmission de signal
Transmission de signal
 
STM32 F4 (PWM,SPI And ADC Test Examples)
STM32 F4 (PWM,SPI And ADC Test Examples)STM32 F4 (PWM,SPI And ADC Test Examples)
STM32 F4 (PWM,SPI And ADC Test Examples)
 
Lamini&farsane traitement de_signale
Lamini&farsane traitement de_signaleLamini&farsane traitement de_signale
Lamini&farsane traitement de_signale
 
Chap2 dsp
Chap2 dspChap2 dsp
Chap2 dsp
 
Tp 3 transmission de donné modulation d'amplitude,de fréquence et de phase
Tp 3 transmission de donné modulation d'amplitude,de fréquence et de phaseTp 3 transmission de donné modulation d'amplitude,de fréquence et de phase
Tp 3 transmission de donné modulation d'amplitude,de fréquence et de phase
 
Poly ep
Poly epPoly ep
Poly ep
 
Traitement d'image sous Matlab
Traitement d'image sous Matlab  Traitement d'image sous Matlab
Traitement d'image sous Matlab
 
Programmation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communicationProgrammation de systèmes embarqués : Bus et périphériques de communication
Programmation de systèmes embarqués : Bus et périphériques de communication
 

Destacado

DSP architecture
DSP architectureDSP architecture
DSP architecturejstripinis
 
Introduction to Digital Signal Processing
Introduction to Digital Signal ProcessingIntroduction to Digital Signal Processing
Introduction to Digital Signal Processingop205
 
Digital Signal Processors - DSP's
Digital Signal Processors - DSP'sDigital Signal Processors - DSP's
Digital Signal Processors - DSP'sHicham Berkouk
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
Implémentation optimale de filtres linéaires en arithmétique virgule fixe
Implémentation optimale de filtres linéaires en arithmétique virgule fixeImplémentation optimale de filtres linéaires en arithmétique virgule fixe
Implémentation optimale de filtres linéaires en arithmétique virgule fixeBenoit Lopez
 
La docencia y la cultura
La docencia y la culturaLa docencia y la cultura
La docencia y la culturaRo Sport
 
Evolución de las computadoras
Evolución de las computadorasEvolución de las computadoras
Evolución de las computadorasLety Martinez
 
S4 drf-printemps-13
S4 drf-printemps-13S4 drf-printemps-13
S4 drf-printemps-13essa1988
 
07 belles-histoires-d'amour-animales
07 belles-histoires-d'amour-animales07 belles-histoires-d'amour-animales
07 belles-histoires-d'amour-animalesDominique Pongi
 
L eau chaude_et_le_coeur
L eau chaude_et_le_coeurL eau chaude_et_le_coeur
L eau chaude_et_le_coeurDominique Pongi
 

Destacado (19)

DSP architecture
DSP architectureDSP architecture
DSP architecture
 
DSP Processor
DSP Processor DSP Processor
DSP Processor
 
Introduction to Digital Signal Processing
Introduction to Digital Signal ProcessingIntroduction to Digital Signal Processing
Introduction to Digital Signal Processing
 
Dsp ppt
Dsp pptDsp ppt
Dsp ppt
 
Chapitre2 prog dsplf3
Chapitre2 prog dsplf3Chapitre2 prog dsplf3
Chapitre2 prog dsplf3
 
Introduction to visual DSP++ Kernel
Introduction to visual DSP++ KernelIntroduction to visual DSP++ Kernel
Introduction to visual DSP++ Kernel
 
Digital Signal Processors - DSP's
Digital Signal Processors - DSP'sDigital Signal Processors - DSP's
Digital Signal Processors - DSP's
 
Processeur FPGA
Processeur FPGAProcesseur FPGA
Processeur FPGA
 
Temps reel
Temps reel Temps reel
Temps reel
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
Implémentation optimale de filtres linéaires en arithmétique virgule fixe
Implémentation optimale de filtres linéaires en arithmétique virgule fixeImplémentation optimale de filtres linéaires en arithmétique virgule fixe
Implémentation optimale de filtres linéaires en arithmétique virgule fixe
 
La docencia y la cultura
La docencia y la culturaLa docencia y la cultura
La docencia y la cultura
 
Evolución de las computadoras
Evolución de las computadorasEvolución de las computadoras
Evolución de las computadoras
 
S4 drf-printemps-13
S4 drf-printemps-13S4 drf-printemps-13
S4 drf-printemps-13
 
VIDEOS TUTORIALES
VIDEOS TUTORIALESVIDEOS TUTORIALES
VIDEOS TUTORIALES
 
Principales ressources cartographiques et statistiques Centre GéoStat (2015)
Principales ressources cartographiques et statistiques Centre GéoStat (2015)Principales ressources cartographiques et statistiques Centre GéoStat (2015)
Principales ressources cartographiques et statistiques Centre GéoStat (2015)
 
07 belles-histoires-d'amour-animales
07 belles-histoires-d'amour-animales07 belles-histoires-d'amour-animales
07 belles-histoires-d'amour-animales
 
L eau chaude_et_le_coeur
L eau chaude_et_le_coeurL eau chaude_et_le_coeur
L eau chaude_et_le_coeur
 
Inventions de femme
Inventions de femmeInventions de femme
Inventions de femme
 

Similar a Chapitre3 prog dsplf3

COURS VHDL PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL   PROGRAMMATION ET _ETAPES pour comprendreCOURS VHDL   PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL PROGRAMMATION ET _ETAPES pour comprendreMariamHafsa
 
.NET Microframework: du code, de l&rsquo;électronique, de la robotique
.NET Microframework: du code, de l&rsquo;électronique, de la robotique.NET Microframework: du code, de l&rsquo;électronique, de la robotique
.NET Microframework: du code, de l&rsquo;électronique, de la robotiqueMicrosoft
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesXavier MARIN
 
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch - Domotique et robotique avec le micro Framework .NETsoft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch - Domotique et robotique avec le micro Framework .NETsoft-shake.ch
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxMarc Bojoly
 
Presentaion fpga µc µp quelles est la solution
Presentaion  fpga µc µp quelles est la solutionPresentaion  fpga µc µp quelles est la solution
Presentaion fpga µc µp quelles est la solutionCynapsys It Hotspot
 
Sizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloadsSizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloadsPhilippeBrogi
 
OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...
OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...
OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...Paris Open Source Summit
 
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...Microsoft
 
Architecture des ordinateurs
Architecture des ordinateursArchitecture des ordinateurs
Architecture des ordinateursRMwebsite
 
Cours de microcontrôleurs
Cours de microcontrôleursCours de microcontrôleurs
Cours de microcontrôleurssarah Benmerzouk
 
Apache Kafka, Un système distribué de messagerie hautement performant
Apache Kafka, Un système distribué de messagerie hautement performantApache Kafka, Un système distribué de messagerie hautement performant
Apache Kafka, Un système distribué de messagerie hautement performantALTIC Altic
 
Chapitre 3-architecture-des-dsp
Chapitre 3-architecture-des-dspChapitre 3-architecture-des-dsp
Chapitre 3-architecture-des-dspgharbisalah
 
Ez18n Annotation Processing Tool in a nutshell
Ez18n Annotation Processing Tool in a nutshellEz18n Annotation Processing Tool in a nutshell
Ez18n Annotation Processing Tool in a nutshellgdigugli
 
Net duino et le .net micro framework
Net duino et le .net micro frameworkNet duino et le .net micro framework
Net duino et le .net micro frameworkVincent Hubert
 
Isbs slides 2010
Isbs slides 2010Isbs slides 2010
Isbs slides 2010RMwebsite
 

Similar a Chapitre3 prog dsplf3 (20)

COURS VHDL PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL   PROGRAMMATION ET _ETAPES pour comprendreCOURS VHDL   PROGRAMMATION ET _ETAPES pour comprendre
COURS VHDL PROGRAMMATION ET _ETAPES pour comprendre
 
.NET Microframework: du code, de l&rsquo;électronique, de la robotique
.NET Microframework: du code, de l&rsquo;électronique, de la robotique.NET Microframework: du code, de l&rsquo;électronique, de la robotique
.NET Microframework: du code, de l&rsquo;électronique, de la robotique
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
 
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch - Domotique et robotique avec le micro Framework .NETsoft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptx
 
Presentaion fpga µc µp quelles est la solution
Presentaion  fpga µc µp quelles est la solutionPresentaion  fpga µc µp quelles est la solution
Presentaion fpga µc µp quelles est la solution
 
Sizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloadsSizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloads
 
OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...
OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...
OWF12/PAUG Conf Days Render script, sylvain galand, software engineer at geny...
 
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
Du hard et des réseaux: Les outils pour construire l'internet des objets chez...
 
Architecture des ordinateurs
Architecture des ordinateursArchitecture des ordinateurs
Architecture des ordinateurs
 
Démo puppet et état du projet
Démo puppet et état du projetDémo puppet et état du projet
Démo puppet et état du projet
 
Cours de microcontrôleurs
Cours de microcontrôleursCours de microcontrôleurs
Cours de microcontrôleurs
 
Apache kafka big data track
Apache kafka   big data trackApache kafka   big data track
Apache kafka big data track
 
Apache Kafka, Un système distribué de messagerie hautement performant
Apache Kafka, Un système distribué de messagerie hautement performantApache Kafka, Un système distribué de messagerie hautement performant
Apache Kafka, Un système distribué de messagerie hautement performant
 
Chapitre 3-architecture-des-dsp
Chapitre 3-architecture-des-dspChapitre 3-architecture-des-dsp
Chapitre 3-architecture-des-dsp
 
Démystifier la programmation avec LabVIEW FPGA
Démystifier la programmation avec LabVIEW FPGADémystifier la programmation avec LabVIEW FPGA
Démystifier la programmation avec LabVIEW FPGA
 
Ez18n Annotation Processing Tool in a nutshell
Ez18n Annotation Processing Tool in a nutshellEz18n Annotation Processing Tool in a nutshell
Ez18n Annotation Processing Tool in a nutshell
 
Net duino et le .net micro framework
Net duino et le .net micro frameworkNet duino et le .net micro framework
Net duino et le .net micro framework
 
Isbs slides 2010
Isbs slides 2010Isbs slides 2010
Isbs slides 2010
 
_JCVFr
_JCVFr_JCVFr
_JCVFr
 

Último

Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Gilles Le Page
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .Txaruka
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETMedBechir
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETMedBechir
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationpapediallo3
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeXL Groupe
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 37
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 37
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSKennel
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsRajiAbdelghani
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfRiDaHAziz
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSKennel
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Alain Marois
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfRiDaHAziz
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSKennel
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre françaisTxaruka
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSKennel
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSKennel
 

Último (20)

Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024
 
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .Annie   Ernaux  Extérieurs. pptx. Exposition basée sur un livre .
Annie Ernaux Extérieurs. pptx. Exposition basée sur un livre .
 
Cours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSETCours SE Gestion des périphériques - IG IPSET
Cours SE Gestion des périphériques - IG IPSET
 
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSETCours SE Le système Linux : La ligne de commande bash - IG IPSET
Cours SE Le système Linux : La ligne de commande bash - IG IPSET
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'information
 
Le Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directeLe Lean sur une ligne de production : Formation et mise en application directe
Le Lean sur une ligne de production : Formation et mise en application directe
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
 
Principe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 tempsPrincipe de fonctionnement d'un moteur 4 temps
Principe de fonctionnement d'un moteur 4 temps
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdf
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdf
 
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_FormationRecherche.pdf
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre français
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
 
DO PALÁCIO À ASSEMBLEIA .
DO PALÁCIO À ASSEMBLEIA                 .DO PALÁCIO À ASSEMBLEIA                 .
DO PALÁCIO À ASSEMBLEIA .
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
 

Chapitre3 prog dsplf3

  • 1. Développement pour une plateforme DSP  Mise au point de l ’algorithme  Prototypage, simulation haut-niveau  Matlab  Langage C sur PC  Implémentation DSP  Développement sur carte d'évaluation  Langage C  Cartes EVM, SDK  Noyau temps-réel (DSP/BIOS)  Optimisation des parties critiques  Assembleur  Outils de débogage  Simulateur  Émulateur  Boundary scan JTAG (Norme IEEE 1179.1)  Communication temps-réel avec un PC hôte 2
  • 2. Développement pour un DSP Outils de Compilateur *.asm conception *.c C IDE *.asm Assembleur *.obj *.lst Editeur de Texte *.cmd Linker *.out *.map  Simulateur *.hex  DSP Chargement sur la cible 3
  • 3. C vs. assembleur  Assembleur  Langage C  Langage bas-niveau  Langage de plus haut-  Fastidieux niveau  Jeux d’instructions  Plus rapide à coder complexes et irréguliers  Meilleure portabilité  Spécifique à chaque  Code machine généré constructeur moins efficace  Plus puissant  Malgré l’optimisation par  Accès direct à certains le compilateur registres inconnus du C  Outils de développement  Nécessaire pour une  Noyau temps-réel optimisation poussée (DSP/BIOS)  Configuration de la carte  Librairies de calculs optimisées (DSPLIB) 4
  • 4. Outils d'aide au développement User Application Drivers DSP/BIOS™ Dsplib CSL Kernel/Scheduler Imglib CODEC Timer McBSP EMIF CPU DSP DIP Switches Target Board 5
  • 5. CSL (Chip Support Library)  Librairie pour faciliter C67x™ DSP Modules l'utilisation des CHIP périphériques internes du DAA DSP  Plateformes C5000 et C6000 DAT Texas Instruments DMA  Accessible depuis le EBUS langage C GPIO  Organisation en modules HPI  Un module par périphérique IRQ MCBSP PLL PWR UART WDTIM 6
  • 6. Avantages d'une librairie de support de type CSL  Abstraction du matériel à travers une API logicielle  Configuration  Accès aux ressources  Macros pour accéder au niveau des contenus de registres  Intégré au noyau temps-réel DSP/BIOS  Interface graphique CSL  Facilitation du développement  Méthodes standards d'accès aux périphériques  Temps de développement réduit  Programmation à plus haut-niveau  Utile pour compenser l'augmentation de la complexité des processeurs et des applications 7
  • 7. Librairies spécialisées (DSPLIB, IMGLIB)  Librairies de support pour le calcul  Traitement du signal ou des images  Déjà programmées  Optimisées  Utilisables depuis le langage C  Fonctionnalités de base  FFT  Filtrage  Mathématiques et trigonométrie  Calcul matriciel 8
  • 8. Propriétés des systèmes temps-réel  Piloté par évènements  Synchrones (chronomètre)  Asynchrones (interruptions des E/S)  Contraint dans le temps  Contraintes dures (deadlines critiques)  Contraintes souples (deadlines non critiques)  Concurrence de l'exécution  Contraintes sur plusieurs traitements en parallèle  Nécessite un ordonnancement  multi-tâches (plusieurs traitements à la fois)  préemptif (toute tâche peut être interrompue par une tâche plus prioritaire)  Déterministe et fiable  Comportement du système prédictible  Temps de réponse bornés 9
  • 9. Système temps-réel DSP BIOS  Noyau temps-réel  Ordonnanceur temps-réel  Gestion multi-threads préemptive  Outils d'analyse temps-réel  Débogage sans interruption de l'exécution  Profiling, vision des threads  Intégration avec  Real-time data exchange (RTDX)  Communication hôte↔DSP pendant l'exécution  Chip Support Library (CSL) 10
  • 10. Stratification des traitements sous DSP/BIOS Hard Real-time 1st-TIER Interruptions matérielles  Traitement par échantillon  Réaction à la microseconde 2nd-TIER Interruptions logicielles  Traitement par blocs  Réaction à la milliseconde  Traitements ordonnancés Multi-tâche  Exécution concurrente Tâche de fond (idle)  S'il reste du temps Soft Real-time 11
  • 11. Mise en œuvre et implémentation de filtres RIF et RII 12
  • 12. Méthodologie d'implantation d'un filtre  Étape 0 : Choix du filtre  Choix du filtre et calcul des coefficients  Étape 1 : Choix de structure  Choix d'un schéma d'implantation  Écriture des équations correspondantes  Étape 2 : Choix algorithmiques  Choix de l'implantation mémoire et des variables  Écriture de l'algorithme  Étape 3 : Choix numériques  Choix du format Qk  Écriture du programme  Étape 4 : Validation  Définir un protocole de test et l'appliquer  Etape 5 : Optimisation 13
  • 13. Étape 1 : Schéma et équations |H(f )| pass-band stop-band 1 fc : cut-of f f requency fs/2 f (norm) (a) |H(f )| pass-band transition band stop-band |H(f )| (dB) (linear) p 1   p 0 1 1   p pass-band -3 ripple stop-band ripple s  s fs/2 f (norm) fs b : stop-band f requency fc : cut-of f f requency fpb : pass-band f requency (b)
  • 14. Méthodes de synthèse d'un filtre  Il existe de nombreuses méthodes  Méthode de la fenêtre  Optimisation par moindres carrés  Calcul des coefficients par approximation de tchebycheff  Par TFD récursive  etc.
  • 21. Étape 1 : Schéma et équations Exemple sur une cellule RII du 2e ordre s wn b0 xn yn z-1 -a1 w b1 wn  sxn  a1wn1  a2 wn2 n-1 z-1 yn  b0 wn  b1wn1  b2 wn2 -a2 b2 Équations correspondantes wn-2 Forme directe II 22
  • 22. Étape 2 : Variables et algorithme Entrées : coefs dbuffer x (contient xn) 0 s 0 wn-1 w(n-1) dbuffer (contient wn-1 et wn-2) coefs (contient les coefficients) 1 a1 1 wn-2 w(n-2) Variable temporaire : 2 a2 tableau des w (recevra wn) 3 b2 retards Calcul 4 b1 wn ← s * xn – a1 * w(n-1) – a2 * w(n-2) 5 b0 xn x y ← b0 * wn + b1 * w(n-1) + b2 * w(n-2) tableau des Mise à jour retards ? puis yn y coefficients w(n-2) ← w(n-1) ? puis wn w w(n-1) ← wn variables Sorties : temporaires y (reçoit yn) dbuffer (contient wn'-1 et wn'-2 pour n'=n+1) État de la mémoire lors de l'appel de la fonction 23
  • 23. Étape 3 : Format Qk et programme C int coefs[6]; x(n) Q15 int dbuffer[2]; s Q15 int cellule(int x) { ai Q15 int w; int y; bi Q15 /* Calcul */ wk Q15 w=((long)coefs[0]*x +(long)coefs[1]*dbuffer[0] –(long)coefs[2]*dbuffer[1]) >> 15; y=((long)coefs[5]*w +(long)coefs[4]*dbuffer[1] Conversion algorithme (calcul sur des réels) +(long)coefs[3]*dbuffer[0]) >> 15; vers programme (calcul en format Qk) /* Mise à jour retards */ dbuffer[1]=dbuffer[0]; s*x dbuffer[0]=w; devient /* Sortie */ (coefs[0]*x)>>15 return y; pour un résultat en Q15 } 24
  • 24. Étape 3 : Programme détaillé  Si programmation ACC=x(n)  s en assembleur, ACC=ACC - a1  w(n-1) nécessité de ACC=ACC - a2  w(n-2) décomposer en w(n)=ACC>>15 ACC=w(n)  b0 calculs élémentaires ACC=ACC + b2  w(n-2)  Algorithmedétaillé ACC=ACC + b1  w(n-1)  Conversion en y(n)=ACC>>15 assembleur w(n-2)=w(n-1) w(n-1)=w(n) 25
  • 25. Implantation mémoire pour cellules en cascade coefs dbuffer 0 w1(n-1) 0 s cellule 1 1 w1(n-2) 1 a11 2+1 w2(n-1) 2 a12 cellule 2 cellule 1 2+2 w2(n-2) … b12 … b11 5 b10 5+1 a21 5+2 a22 … b22 cellule 2 b21 b20 26
  • 26. Filtres RIF Structure transverse Implémentation par Buffer linéaire Buffer circulaire 27
  • 27. Structures pour filtre RIF  Structure transverse avec ligne à retard y n   b0 xn   b1 xn  1  ....  bN 1 xn  N  1 -1 -1 -1 x(n) z z z b b b b 0 1 2 N-1 + + + y (n)  Structure en treillis (filtres adaptatifs) y0(n) y1(n) y2(n) y3(n) + + + x(n) k1 k2 k3 u1(n) u2(n) u3(n) u0(n) z-1 + z-1 + z-1 + yi(n) = yi-1(n) + ki ui-1(n) et ui(n) = k1 yi-1(n) + ui-1(n-1) avec y0(n)=u0(n)=x(n). 28
  • 28. Structures pour filtre RIF  Structures en cascade: N 1  k  b  b z  1  b z  2  ... b   N  1 H z      bk z z   0 1 2 N 1 k 0   N  1 z   N  1  b 1 b  2 b   b 1  1 z  2 z  ...   0 b b b   0 0 0  M  b  1  b z  1  b  z 2   0 k 1  k ,1 k ,2  x(n) b0 y (n) + + + z -1 z -1 z -1 b 1,1 b 2,1 b M,1 + + + z -1 z -1 z -1 b 1,2 b 2,2 b M,2 29
  • 29. Filtre RIF par structure transverse  Deux aspects  Mise à jour de la mémoire  A chaque réception d’une nouvelle donnée x(n)  Calcul du filtre  ACCU=0  for i=0 to N-1:  ACCU ← ACCU + h(i) x(n-i)  Sortie de y(n)=ACCU 30
  • 30. N 1 y n    bi xn  i  Buffer linéaire i 0 Schéma "état mémoire" Schéma de structure de filtre x(n) y(n) xtab xtab 0 x(n-1) 0 x(n) b0 1 x(n-2) 1 x(n-1) b1 … 2 x(n-2) b2 … … … … … … … … … N-2 x(n-N+1) N-2 x(n-N+2) bN-2 N-1 x(n-N) N-1 x(n-N+1) bN-1 x(n-N) Mise à jour du buffer Calcul de y(n) 31
  • 31. N 1 y n    bi xn  i  Buffer circulaire i 0 Schéma "état mémoire" Schéma de structure de filtre x(n) y(n) xtab xtab 0 x(n-k+1) 0 x(n-k+1) bk+1 1 … 1 … … x(n-N+1) x(n-N+1) bN-1 x(n-N) idx x(n) b0 idx x(n-1) x(n-1) b1 x(n-2) x(n-2) b2 N-2 … N-2 … … N-1 x(n-k) N-1 x(n-k) bk Mise à jour du buffer Calcul de y(n) 32
  • 32. Quantification des coefficients RIF  Virgule fixe: N 1  B=16 bits pour h(i) , x(n-i) et y(n) y n    hi xn  i  i 0  40 bits pour les accumulateurs  Représentation Qk  Coefficient de magnitude maximale:  hmax = max |h(i)|  Nombre de bits nécessaires pour la partie entière :  BE = log2(hmax)  Codage Qk avec k = B – BE  h(i) = round(h(i)/2k) 33
  • 33. Filtre RIF avec buffer circulaire en assembleur N 1 y n    hi xn  i  N .set 32 ; adr_x+d supposé chargé i 0 dans AR2 Adresses Contenu STM #(coef)+N-1, AR3 Adresses Contenu k = adr_x x(n-N+d-1) STM #(adr_y), AR5 i = coef h(N-1) …… …… i +1 h(N-2) k+d-1 x(n-N+1) STM #N, BK STM #1, AR0 i+2 h(N-3) k+d x(n) …… …… …… …… RPTZ A, #N-1 i+N-1 h(0) k+N x(n-N+d) MAC *AR2+0%, *AR3-, A Mémoire Programme Mémoire Données STH A, *AR5 Rmq: les log2(N) bits de poids faible de adr_x doivent être nuls 34
  • 34. Exemple d’implémentation d’un filtre RIF en Q15 short fir_filter (short input) { int i; short output; int acc=0; int prod; R_in[0] = input; /* lire les valeurs des échantillons */ acc = 0; /* initialisation de l’acc à zéro*/ for (i=0; i<128; i++) { prod = (h[i]*R_in[i]); /* Q.15 */ acc = acc + prod; /* mise a jour des 32-bit de l’acc */ } output = (short) (acc>>15); /* mise en forme de l’output (16-bits) */ for (i=127; i>0; i--) /* décalage des échantillons */ R_in[i]=R_in[i-1]; return output; }
  • 35. Filtres RII Structures de filtres Décomposition en élements simples Problèmes de quantification 36
  • 36. Filtre RII  Fonction de transfert rationnelle Q N(z)  bi z i i0 H(z)   P D( z ) 1   ak z  k k 1  Equation aux différences Q P yn   bi xni   ak ynk i 0 k 1 37
  • 37. Filtre RII – Pôles et zéros  Zéros au numérateur   Q Q  bi z  b0  1  zi z 1 i 0 i i 0  Pôles au dénominateur   P P 1   ai z   1  pi z 1 i i 1 i 0 38
  • 38. Forme directe I (ND) Q P yn   bi xni   ak yn k b0 xn yn z-1 z-1 i 0 k 1 b1 -a1 z-1 -a2 z-1 b2 1 z-1 z-1 H ( z)  N ( z) b3 -a3 D( z ) •Forme non canonique : •Nécessite Q+P mémoires z-1 z-1 bQ-1 -aQ-1 Forme directe I (ND) 39
  • 39. Forme directe II (DN) b0 xn yn 1 -a1 z-1 b1 H ( z)  N ( z) D( z ) z-1 -a2 b2 •Forme canonique •Nécessite max(Q,P) mémoires -a3 z-1 b3 z-1 -aQ-1 bQ-1 Forme directe II (DN) 40
  • 40. Forme directe II transposée b0 b0 xn yn xn yn z-1 z-1 -a1 b1 b1 -a1 z-1 -a2 b2 z-1 b2 -a2 z-1 -a3 b3 z-1 b3 -a3 z-1 z-1 -aQ-1 bQ-1 bQ-1 -aQ-1 Forme directe II Forme directe II transposée 41
  • 41. Quantification des coefficients b0 xn yn -a1 z-1 b1 ak  ak  ak z-1 -a2 b2 -a3 z-1 b3 bk  bk  bk Quantification d’un coef : z-1 -aQ-1 bQ-1 aq = round(a*q)/q avec un pas de quantification q=2-k Forme directe II 42
  • 42. Quantification des coefficients Q N(z)  bi z i i0 H(z)   a k  a k  a k P D( z ) 1   ak z  k k 1 Le dénominateur quantifié devient : Q 1 Q 1  D  z   1   ak z  k   1  pl z 1  k 1 l 1 La fonction de transfert est donc perturbée. Plus le degré du polynôme est élevé, plus la fonction de transfert sera perturbée. 43
  • 43. Décomposition d’un filtre RII  en sections du deuxième ordre  choisies pour leur stabilité  coefficients réels (racines conjuguées) Structure parallèle Structure cascade c0 b0  b1 z 1 b0  b1 z 1  b2 z 2 b0  b1 z 1  b2 z 2 xn 1  a1 z 1  a2 z  2 1  a1 z 1  a2 z  2 yn 1  a1 z 1  a2 z  2 xn yn b0  b1 z 1 1  a1 z 1  a2 z  2 Factorisation Expansion partielle B( z ) N 1 1  bi 1 z 1  bi 2 z 2  b0  1 B( z ) N 1 bi 0  bi 1 z 1 A( z ) i  0 1  ai 1 z  ai 2 z  2  c0   1 A( z ) i 0 1  ai 1 z  ai 2 z  2 44
  • 44. Décomposition en cascade x(n) s0 s1 s2 s3 y(n) H1 H2 H3 B( z ) N 1 1  bi1 z 1  bi 2 z 2  b0  1 2  b0 H1 ( z ) H 2 ( z ) H 3 ( z ) A( z ) i 0 1  ai1 z  ai 2 z avec : 1  bi1 z 1  bi 2 z 2 et s0 s1s2 s3  b0 H i ( z)  1  ai1 z 1  ai 2 z 2 45