croisement de domaine d’horloge possible?

David

croisement de domaine d’horloge possible?


Veuillez consulter le code suivant. (Par souci de clarté, il s’agit d’un SerDes YCbCr 4: 2: 2 à 4: 4: 4.)

 always @( posedge clk_54 ,  posedge reset )   begin 
 if   ( reset ) cntr <=   0 ; 
 else   if   ( flag_in ) cntr <=  cntr + 1 ;  
 end always @( posedge clk_54 ,  posedge reset )   begin 
 if   ( reset )   begin Y <=   0 ; Cb <=   0 ; Cr <=   0 ;   end 
 if   ( cntr == 0 ) Cb <=  YCbCr ; 
 else   if   (( cntr == 1 )||( cntr == 3 )) Y <=  YCbCr ;  
 else   if   ( cntr == 2 ) Cr <=  YCbCr ; 
 end 

L’horloge d’entrée est de 54 MHz. cntr est un compteur à deux bits. flag_in est un drapeau indiquant au compteur quand commencer. Il est très clair qu’aucun des trois signaux de sortie, Y, Cb ou Cr, ne change à un rythme plus rapide que 27 MHz (la moitié de 54). Si oui, puis-je échantillonner en toute sécurité les signaux à 27 MHz et ne pas m’inquiéter des problèmes de franchissement de domaine d’horloge, de configuration et de maintien, etc.?

Je prévois de synthétiser avec Vivado et de le placer sur un FPGA. L’horloge à 27 MHz sera dérivée de l’assistant d’horloge 54 Mhz avec Vivado.

TonyM

Les horloges 27 MHz et 54 MHz sont-elles asynchrones les unes par rapport aux autres, c’est-à-dire provenant de sources distinctes? Si c’est le cas, leur phase peut / va dériver car leur rapport de fréquence ne sera pas un 2: 1 précis et vos DFF d’entrée de 54 MHz (que vous devriez avoir) peuvent devenir métastables car vous traverserez en effet des domaines d’horloge.

David

J’ai mentionné dans la question que « L’horloge de 27 MHz sera dérivée de l’assistant d’horloge 54 Mhz avec Vivado. »

TonyM

L’assistant de pointage Vivado est une interface graphique, familière à ceux qui l’ont utilisé. Pour en rester aux circuits réels, dites-vous qu’ils sont produits à partir de la même PLL et donc verrouillés en phase les uns aux autres?

David

Ce que je dis, c’est que le clk 54 MHz vient de l’extérieur de la carte, et le 27 MHz est dérivé de l’horloge 54 MHz en utilisant l’assistant de synchronisation Vivado en utilisant l’option PLL

TonyM

Encore une fois, vous décrivez les actions de l’interface graphique Vivado, pas les circuits qu’il crée, alors oublions Vivado pour l’instant. Si vous souhaitez répondre uniquement à ma question de commentaire ci-dessus, je peux vous donner une réponse claire sur votre passage de domaine, ne vous embêtez pas si vous ne le souhaitez pas.

Réponses


 Sean Houlihane

Cela ressemble à un circuit à 54 MHz, car vous n’avez aucun contrôle évident sur la mise en phase des deux horloges. Tant que les deux horloges sont synchrones et que tous les chemins clk_27 à clk_54 sont synchronisés sur 54 MHz, il ne devrait y avoir aucun problème de métastabilité ou de convergence.

Si l’un des signaux est généré par différentes sources d’horloge (même s’ils sont verrouillés en phase), ou passe hors puce via des connexions externes, vous devrez également tenir compte de la variation de retard la plus défavorable.

 

#de, croisement, d’horloge, domaine?, possible

 

google

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *