Exemple de conception de filtre Faralis multicanal

author-image

Par

Cet exemple démontre comment utiliser le Intel® FPGA DSP Builder Advanced Blockset (DSPB-AB) pour mettre en œuvre un filtre de conversion de taux d’échantillonnage multicanal basé sur une structure Farvol.

La conversion des taux d’échantillonnage a un large éventail d’applications telles que les communications sans fil, l’imagerie médicale et les applications militaires. Au lieu d’implémenter la décomchroniseur polyphase, le filtre de resamplage Far entre en jeu utilise des polynomiels de faible ordre pour réaliser les mêmes fonctionnalités, ce qui entraîne des économies logiques significatives. Il est particulièrement efficace pour traiter plusieurs canaux ou plusieurs chemins de données parallèles, où tous les chemins de données ou canaux nécessitent le même ensemble de coefficients de filtre.

Dans cet exemple, nous construisons un filtre de conversion de taux d’échantillonnage Farlux à l’aide de blocs de prélation DSPB-AB. En particulier, nous montrons comment tirer parti de la fonctionnalité de pliage du DSPB-AB. La fonctionnalité pliante du DSPB-AB réalise automatiquement le partage des ressources et la réutilisation du matériel en fonction des paramètres système spécifiés par l’utilisateur.

Le diagramme de blocs fonctionnels d’un filtre Farlink est indiqué dans la Figure 1. Tous les modules sont conçus à l’aide de blocs Dens à DSPB-AB.

Figure 1. Diagramme de blocs filtres Fartruc

Le symbole r est utilisé pour quantifier la différence de phase d’échantillonnage entre l’entrée actuelle et l’échantillon de sortie souhaité. La valeur est normalisée entre 0 et 1. Pour chaque échantillon de sortie, vous pouvez calculer r à l’aide de la formule suivante :

r = (Output_time – Input_time)* Input_Sampling_Frequency

Dans cette démo, nous avons utilisé un algorithme récursif pour calculer r pour chaque échantillon de sortie :

Formule

où n est un entier indiquant le nombre d’échantillons ou le horodatage dédié. C1 est défini comme la partie fractionnelle de l’inverse du facteur de changement de taux

Et

Fonctionnalités

Cette démonstration possède les fonctionnalités suivantes :

  • Prend en charge la décimation et l’interpolation.
  • Prend en charge presque tout facteur de modification rationnelle de la fréquence d’échantillonnage
  • Prend en charge jusqu’à 16 canaux, bien que vous puissiez facilement modifier la conception pour prendre en charge davantage de canaux
  • Prend en charge les paramètres à l’aide d’un script d’installation
  • Prend en charge la modification facile du filtre de resamplage (polynomial) en étendant la longueur des lignes de retard du tap
  • Fournit des scripts d’initialisation et de post-simulation pour configurer des paramètres et comparer et vérifier les sorties
  • Prend en charge le pliage automatique, permettant un multiplexage time-division sur des multiplicateurs, des adders et d’autres ressources matérielles

Remarque 1 : Pour la version 9.1, la conception exige que la FPGA fréquence d’horloge soit un multiple entier de la vitesse d’échantillonnage d’entrée et du taux d’échantillonnage de sortie. Dans les versions futures, le taux d’échantillonnage de sortie n’a pas à diviser le taux d’horloge FPGA. Par conséquent, elle peut également théoriquement soutenir les changements de taux de délsamplage de l’appareil. Il n’y a pas de modifications structurelles pour le taux d’échantillonnage différent qu’il prend en charge.

Remarque 2 : Tous les canaux doivent être traités par un chemin de données (c’est-à-dire un seul fil dans la conception DSPB-AB). Si vous disposez d’un grand nombre de canaux, vous devriez augmenter votre fréquence d’horloge FPGA de telle sorte que vous n’avez pas à scinder les canaux de données en plusieurs chemins de données parallèles. Pour prendre en charge plusieurs fils ou plusieurs chemins de données, vous devez modifier le bloc d’alignement des données, qui n’est pas couvert dans cet exemple.

Pour plus d’informations sur la conception des filtres de resamplage dans DSPB-AB, reportez-vous à AN 623 : Utilisez le jeu de composants avancés DSP Builder pour implémenter des filtres de resamplage (PDF).

Téléchargez les fichiers utilisés dans cet exemple :

Les fichiers du téléchargement .zip comprennent :

  • farm.mdl— Fichier de conception DSPB-AB pour le filtre de modification de taux d’échantillonnage Faralis à canaux multiples
  • script setup_farrowm.m— MATLAB* pour configurer l’initialisation et les paramètres de far portables.mdl
  • stop_farrowm.m— Script MATLAB pour l’appliquer à la sortie du filtre de réessamplage Far reconnecter et le comparer à la forme d’ondes d’entrée

Pour plus d’informations sur les fonctionnalités connexes utilisées dans cet exemple de conception, consultez :

Liens connexes

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.