Comment générer un retard de phase pi / 4?

H

hbsustc

Guest
Bonjour, tout le monde. J'ai une vieille Atera FPGA, il n'ya pas de PLL sur elle. Maintenant, j'ai une horloge de référence sur 10MHz, le problème est de savoir comment générer un autre horloge de référence dont la phase conduit l'ancien par 45 degrés, ou à la traîne des anciens de 45 degrés? Il semble que je dois utiliser le code pour le réaliser. Merci d'avance!
 
Je vois deux options, en supposant que vous n'avez aucune horloges supplémentaires. 1. Générer un retard d'environ 12,5 ns par une ligne à retard logique cellule. 2. Conception d'un oscillateur en anneau pointant un circuit à retard numérique. Dans les deux cas, les attributs de synthèse sont nécessaires pour empêcher l'outil de HDL de retirer des cellules logiques retarder. Les manuels d'outils respectifs dire comment.
 
Merci pour vos suggestions, FVM, je crains que sa performance sera détériorée par les points suivants: 1. Pour la ligne à retard Logic-cellulaires, son retard n'est pas précis, il sera influencé par d'alimentation et de température. 2. L'oscillateur en anneau 3-étapes réalisées dans FPGA semble pas réalisable, il est un peu instable pour une utilisation à long terme. Cet après-midi, j'ai essayé d'utiliser de la façon suivante pour réaliser pi / 4 retard de phase avance ou en retard: 1. Utilisez un 10MHz * 8 = 80MHz horloge pour déclencher un compteur de code Gray (j'ai essayé d'utiliser le compteur binaire d'une part, mais le pépin suce) 2. La sortie du compteur Gray Code sera 1, 3, 2, 6, 7, 5, 4, 0 périodiquement, afin de faire écrire quelque chose du module générer une impulsion lorsque la sortie = 1 ou = sortie 7. (Génère les autres 2 impulsions quand la sortie = 3 ou 5 et la sortie = 2 ou 4) 3. Utilisez les impulsions pour déclencher une devider fréquence. Donc, il génère trois signaux d'horloge dont la phase est pi / 4 de plomb, 0, pi / 4 lag.
 
Oui, une horloge supplémentaire permettrait une solution plus précise. Mais il a une variation de retard / l'incertitude d'une période de l'horloge à haute fréquence, si les deux horloges ne sont pas liés. Il aurait besoin d'une multiplication de fréquence beaucoup plus élevée pour réduire l'incertitude à un montant acceptable. Une ligne à retard peut atteindre une phase supérieure d'Accuray une horloge auxiliaire non reliés, dont moins d'effort.
 
Oui, vous avez raison. Délai en temps réel des tampons LE ne peut pas être obtenu à partir de simulation timing, normalement il est plus petit que la valeur simulée. J'ai donc besoin de programmer la puce et le mesurer. Merci!
 
Bonjour, tout le monde. J'ai une vieille Atera FPGA, il n'ya pas de PLL sur elle. Maintenant, j'ai une horloge de référence sur 10MHz, le problème est de savoir comment générer un autre horloge de référence dont la phase conduit l'ancien par 45 degrés, ou à la traîne des anciens de 45 degrés? Il semble que je dois utiliser le code pour le réaliser. Merci d'avance!
 
Je vois deux options, en supposant que vous n'avez aucune horloges supplémentaires. 1. Générer un retard d'environ 12,5 ns par une ligne à retard logique cellule. 2. Conception d'un oscillateur en anneau pointant un circuit à retard numérique. Dans les deux cas, les attributs de synthèse sont nécessaires pour empêcher l'outil de HDL de retirer des cellules logiques retarder. Les manuels d'outils respectifs dire comment.
 
Merci pour vos suggestions, FVM, je crains que sa performance sera détériorée par les points suivants: 1. Pour la ligne à retard Logic-cellulaires, son retard n'est pas précis, il sera influencé par d'alimentation et de température. 2. L'oscillateur en anneau 3-étapes réalisées dans FPGA semble pas réalisable, il est un peu instable pour une utilisation à long terme. Cet après-midi, j'ai essayé d'utiliser de la façon suivante pour réaliser pi / 4 retard de phase avance ou en retard: 1. Utilisez un 10MHz * 8 = 80MHz horloge pour déclencher un compteur de code Gray (j'ai essayé d'utiliser le compteur binaire d'une part, mais le pépin suce) 2. La sortie du compteur Gray Code sera 1, 3, 2, 6, 7, 5, 4, 0 périodiquement, afin de faire écrire quelque chose du module générer une impulsion lorsque la sortie = 1 ou = sortie 7. (Génère les autres 2 impulsions quand la sortie = 3 ou 5 et la sortie = 2 ou 4) 3. Utilisez les impulsions pour déclencher une devider fréquence. Donc, il génère trois signaux d'horloge dont la phase est pi / 4 de plomb, 0, pi / 4 lag.
 
Oui, une horloge supplémentaire permettrait une solution plus précise. Mais il a une variation de retard / l'incertitude d'une période de l'horloge à haute fréquence, si les deux horloges ne sont pas liés. Il aurait besoin d'une multiplication de fréquence beaucoup plus élevée pour réduire l'incertitude à un montant acceptable. Une ligne à retard peut atteindre une phase supérieure d'Accuray une horloge auxiliaire non reliés, dont moins d'effort.
 
Oui, vous avez raison. Délai en temps réel des tampons LE ne peut pas être obtenu à partir de simulation timing, normalement il est plus petit que la valeur simulée. J'ai donc besoin de programmer la puce et le mesurer. Merci!
 

Welcome to EDABoard.com

Sponsor

Back
Top