Fractional Interpolation / décimation application du filtre

T

tigger

Guest
Comment puis-je mettre en œuvre une fraction d'interpolation / filtre de décimation dans le matériel? Je sais comment faire un entier interpolation / filtre de décimation (en utilisant des filtres polyphasés), mais ne savez pas comment faire une fraction sans survitesse. Par exemple, pour convertir les données échantillonnées 100MHz à 90MHz, le facteur de décimation est 10 / 9. Mathématiquement cela peut être fait par interpolation 9x suivie par décimation 10x, mais cela signifie que 9x survitesse, ou horloge de 900 MHz pour les filtres polyphasés. Est-ce possible en utilisant uniquement l'horloge 100MHz? Merci.
 
Vous pourriez avoir à utiliser de PLL RF 900MHz pour obtenir de 100MHz. Mais je ne sais pas comment réaliser du matériel pour l'interpolation numérique et de décimation pour une fréquence aussi élevée.
 
Ces fréquences sont presque impossibles pour le moment. Vous aurez à l'échantillon à faible taux et la fréquence
 
Pour ce type de haute fréquence, vous ne pouvez pas utiliser directement la manière simple et direct que vous avez mentionné. Je suppose que vos données sont une bande passante limitée. Puis, après filtre passe-bas, vous pouvez utiliser un sous-officier directement les données de l'échantillon à 100M 90M. La question ici est d'obtenir une précision de 90 millions, vous avez besoin d'une source supérieure à l'horloge de votre sous-officier. ce qui concerne
 
Sans aller jusqu'à domaine analogique (c'est à dire sans utiliser analogiques filtre passe-bas pour limiter la bande) est-il possible de l'échantillon en utilisant direclty NCO à 90M? Je veux dire qu'il est possible par des moyens numériques uniquement?
 
Chers Ramesh: Il est largement utilisé dans le modem numérique moderne pour rééchantillonner sans aller domaine analogique. Tout peut être fait numériquement. Toutes les astuces réside dans la formule de base: y (t) = somme {x (m) h (t-MT)}; T est votre période d'échantillonnage. Utiliser une fonction passe-bas de filtre pour le transfert h. Ensuite, vous obtenez l'échantillon de données au moment arbitraire. ce qui concerne
 
Chers dll_embed Pouvez-vous expliquer un peu plus pour le cas ci-dessus, de convertir les données échantillonnées 100MHz à 90MHz s'il vous plaît?
 
Chers Ramesh: De la théorie du filtre numérique, nous savons que nous pouvons récupérer un signal de bande passante limitée de son échantillonné des données discrètes. Elle est régie par une. y (t) = somme (x (m) h (t-MTS)); Pour mieux la comprendre, nous partons d'une filtre passe-bas idéal dont la réponse impulsionnelle est h (t) = sin (pi * t / T) / (pi * t / T). Dans ce cas, le Ts est 10ns; Maintenant, nous voulons rééchantillonner l'y (t) à 90M. Il faut donc utiliser un sous-officier à l'intervalle 1/90M, nous allons calculer l'équation y utiliser (t) 1. Puis elle devient: 2. y (Ti) = somme (x (m) h (Ti-MTS)); Donc, de deux nous pouvons obtenir Y (Ti) (qui est échantillonné 90M). Dans la pratique, on peut utiliser une simple base polynomiale filtre. Et le résultat n'est pas mauvais. ce qui concerne
 
La plupart des réponses ci-dessus abordent la conversion de fréquence d'échantillonnage, qui est quelque peu différente de ma question initiale, mais les deux sont étroitement liées. Pour la conversion de fréquence d'échantillonnage, on peut utiliser NCO ou PLL pour générer une autre horloge et simplement l'utiliser pour ré-échantillonner les données d'entrée. Qu'est-ce que je vais faire est d'utiliser une seule horloge et de générer interpolés / décimé sortie. L'application est de restaurer la nervosité analogique, etc Par exemple, l'entrée analogique a embarqué impulsions de synchronisation (début de la trame). Comme il ya nombre fixe d'échantillons par image, l'intervalle de temps entre les impulsions de synchronisation de deux (ou des impulsions de trame) devrait être fixé. Toutefois, en raison de la nervosité et d'autres raisons, les intervalles de temps le changement d'une image à de l'entrée analogique. Par conséquent la tâche du bloc DSP est d'interpoler / décimer l'/ Un certain nombre de données D et de sortie fixe d'échantillons entre deux impulsions de synchronisation. Depuis le bloc DSP ne peut utiliser une horloge, je n'ai pas le luxe d'utiliser de PLL, ni puis-je utiliser NCO car il n'ya pas plus de fréquences disponibles. Est-ce que quelqu'un sait comment faire cela? Merci!
 
Je ne pense pas qu'il est possible de générer un signal de 90M par une horloge unique 100M. Il semble qu'il viole le droit Niquest. Mais peut-être je comprends votre question à tort ou quelque génie a une grande idée. ce qui concerne
 
Vous n'avez pas besoin de transformer votre signal intermédiaire à 900 MHz et le fossé qu'il en arrière. Prenez 100 MHz diviser par 10, construire VCO et le signal de diviser par 9. puis comparer les deux signaux et faire une boucle PLL. le VCO sera stable quand 90MHz / 9 == 100MHz/10 sont égaux.
 
En utilisant une seule horloge et ne pas avoir le luxe d'utiliser la suggestion PLL Aoxomox (ce qui est bon) peut être d'aucune utilité alors!
 
Permettez-moi d'essayer d'expliquer le problème une fois et j'espère que ce sera clair pour le moment. Il ya un signal analogique avec des impulsions de synchronisation intégré. Le convertisseur A / D prend le signal analogique et des sorties de données numériques à taux fixe 100MHz. Les impulsions de synchronisation sont 1us dehors, donc il devrait être de 100 échantillons entre deux impulsions de synchronisation. Toutefois, en raison de la nervosité etc le nombre varie de 90 à 110. Comment concevez-vous un bloc tel qu'il sort toujours des 100 échantillons d'impulsions de synchronisation entre les. Vous ne pouvez pas tout simplement déposer des données supplémentaires ou des données fictives pad - vous avez de décimer ou interpoler. Aussi 100MHz est la seule horloge qui est disponible.
 
Salut Tigrou Le problème est maintenant différent. Pour cette synchroniser vos points positifs synchronisation 1MHz (1US d'intervalle) en utilisant une PLL avec 100MHz VCXO (oscillateur à quartz de tension contrôlée). Utilisez le ouput VCXO pour échantillonner le signal analogique.
 
semble que ce ne peut être si utile, parce que ne fournira pas une compensation en temps réel, mais après PLLL verrouiller le temps passé seulement. Des cource besoin d'essayer de fréquence d'échantillonnage de verrouillage pour la synchro mais pensez u encore besoin de ré-échantillonnage uniquement.
 
Salut, me corriger si je me trompe. La question est: Conversion de 100MSPS à 90 MSPS (MSPS = MHz) Cela peut être fait par le 9 / 10 (Non 10 / 9) => 100 * 0.9 = 90 MSPS Alors suivante est le processus que l'on doit suivre. 1) décimation par 10 => 100/10 = 10 MSPS 2) Interpolation par 9 => 10 * 9 = 90 MSPS Note: Assurez-vous que la bande passante de l'échantillon de données d'entrée est dans 5MHz (10MSPS taux de Nyquist Fs = Fmax * 2 ) Alors les gars me dire où est la question de suréchantillonnage? C'est 900 MSPS!. (Corrigez-moi si je me trompe) En Xilinx qu'ils fournissent interpolateur fractionnaire et décimateur dans le noyau filtre FIR. Vous pouvez l'utiliser pour atteindre les taux d'ur recherchez. Cordialement, Goutham
 

Welcome to EDABoard.com

Sponsor

Back
Top