Comment générer un signal d'horloge avec Spartan 6?

K

kenleigh

Guest
Je suis un noob dans le monde FPGA. J'ai récemment acheté un kit de dev Spartan 6 (Atlys) de Digilent. J'ai lu le guide utilisateur pour la gestion d'horloge (CMT) et a constaté qu'elle a 4 de CMT et chaque CMT a encore 2 DCM et 1 PLL. Le Atlys a un oscillateur 100Mhz que les horloges du Spartan. Je veux générer une horloge 54MHz et le porter sur 1 des broches E / S de la banque 2. Aucune idée comment commencer avec ça? Ken
 
Bon ...... Vous pouvez activer et configurer ces premitives utilisant Xilinx CoreGenerator outil .. Bien que vous pouvez vérifier la configuration de la datasheet DCM comment il est utile.
Merci pour les liens et conseils. J'ai vu les modèles de conception de Xilinx ISE n'était pas au courant de l'outil de base du générateur. Est-ce également présent dans l'ISE?

<span style="color: grey;"><span style="font-size: 10px">---------- Message ajouté à 14h48 ---------- Le post précédent était à 14:24 ----------</span></span>
Bon alors j'ai trouvé la CoreGererator, sa vertu de la CoreGenerator Outils --->. Maintenant, quand je lance CoreGenerator, je trouve Catalogue IP ---> Caractéristiques et FPGA Design ---> Synchronisation ---> Synchronisation Assistant Dois-je utiliser? Suis-je sur la bonne voie?

<span style="color: grey;"><span style="font-size: 10px">---------- Message ajouté à 15h27 ---------- Le post précédent était à 14 : 48 ---------- </span></span>
OK, j'ai eu le générateur de base au travail et il a obtenu à la sortie du code. Il a utilisé la PLL_BASE primitive et la sortie est CLK_OUT1, c'est aussi utilisé des tampons BUFG Comment puis-je tester cela maintenant, j'ai besoin de cette fréquence de sortie sur une broche E / S. Tout à l'idée de le faire?
 
Vous pouvez conduire le IO broches directement, mais il vaut mieux la pratique d'utiliser un Oddur avec D1 = '1 ', D2 = '0'. Ceci est important pour les bus d'E / S - toutes les données peuvent être placés dans des registres IO. Si l'horloge entraîne une broche directement, le délai est différent. Si l'horloge d'E / S entraîne un registre comme ci-dessus, puis l'horloge de sortie a le même délai que les données de sortie.
 
Vous pouvez conduire le IO broches directement, mais il vaut mieux la pratique d'utiliser un Oddur avec D1 = '1 ', D2 = '0'. Ceci est important pour les bus d'E / S - toutes les données peuvent être placés dans des registres IO. Si l'horloge entraîne une broche directement, le délai est différent. Si l'horloge d'E / S entraîne un registre comme ci-dessus, puis l'horloge de sortie a le même délai que les données de sortie.
Je suis désolé, je ne pouvais pas comprendre ce que vous voulez dire, que dis-je vérifier les 6 Spartan bibliothèque de HDL et trouvé ODDR2 primitive. En fait, je suis l'aide de cette horloge de conduire un module came 1. Ai-je besoin ODDR2 primitive dans le chemin de l'horloge? 2. Le ODDR2 a 2 horloges, Set, Reset et les copeaux de permettre en plus de D0 et D1 que dois-je faire pour les pins? 3. Comment puis-je assigner la sortie Q à une broche I / O Bank2. Remerciements, Ken
 
Comme mentionné, le ODDR/ODDR2 est utilisé pour réduire décalage de l'horloge de données. Si vous ne disposez que d'une horloge, puis ce n'est pas une grosse affaire. Les registres d'E / S ont tous à peu près égales fois clk-out. Ainsi, c'est une pratique juste bon à régénérer l'horloge dans un registre d'E / S (Oddur dans ce cas). les autres broches sont auto explanitory - Set rst = 0, = 0, ce = 1, = clk_b pas clk (besoin d'un signal distinct) à partir de là, il vous suffit de connecter la sortie Q à un signal qui entraîne un port de haut niveau et attribuer que dans l'UCF.
 
à partir de là, il vous suffit de connecter la sortie Q à un signal qui entraîne un port de haut niveau et l'assigner à l'UCF
Et la façon de conduire un port de haut niveau et l'assigner en. l'UCF. Je suis désolé Verilog syntaxe est un peu nouveau pour moi, je vais essayer de trouver la partie UCF, mais si vous pouvez me mettre sur mon chemin avec l'attribution d'une partie Q.
 
hey bonne ... Une fois que vous avez généré IP souhaitée. vous pouvez instancier i votre code HDL en tant que composante. Ensuite, vous pouvez CLKOUT sortie signal sur CLK I / Os du spartan6. suffit-il pour vous? ou besoin d'avoir plus de détails ...... Ne vous inquiétez pas il est très facile maintenant.
 
hey bonne ... Une fois que vous avez généré IP souhaitée. vous pouvez instancier i votre code HDL en tant que composante. Ensuite, vous pouvez CLKOUT sortie signal sur CLK I / Os du spartan6. suffit-il pour vous? ou besoin d'avoir plus de détails ...... Ne vous inquiétez pas il est très facile maintenant.
Merci pour les encouragements. Je suis toujours bloqué jusqu'à un point. J'ai instancié la propriété intellectuelle dans un module de haut niveau. J'ai posté un autre thread à ce problème. Un grand merci.
 

Welcome to EDABoard.com

Sponsor

Back
Top