Horloge, reset, configuration et JTAG
Organiser le démarrage d'une carte autour d'une horloge stable et d'un état connu.
Horloge
Une horloge externe doit fournir la fréquence et le niveau électrique attendus. Elle doit rester stable malgré les variations d'alimentation, de température et de temps. Le jitter correspond aux variations temporelles des fronts. Il réduit la marge disponible quand une interface ou un chemin logique exige un placement précis des fronts.
Les gestionnaires d'horloge internes peuvent multiplier, diviser ou déphaser une horloge et aider à réduire certains écarts. Ils ont besoin d'un temps de verrouillage. Leur signal locked doit donc participer à la logique de démarrage.
Reset
Le reset place le système dans un état connu, en particulier à la mise sous tension. Il peut venir d'un circuit dédié, d'un superviseur d'alimentation ou d'une commande manuelle. Une bonne séquence garde le reset actif pendant que les rails, l'horloge et la configuration ne sont pas prêts.
L'activation asynchrone permet de réagir sans horloge. La désactivation est souvent resynchronisée dans chaque domaine afin d'éviter qu'un front de reset arrive au mauvais moment par rapport à l'horloge.
Configuration et JTAG
La logique FPGA doit être configurée avant de remplir sa fonction. Les broches de mode, la mémoire de configuration et les signaux d'état déterminent le chemin de démarrage.
JTAG forme une chaîne série entre composants compatibles. Il sert au test des connexions de carte et peut aussi participer à la configuration ou au debug. Vérifie l'ordre de la chaîne, l'accès au connecteur, les niveaux électriques et les résistances recommandées.
Ordre de debug
- Rails valides.
- Horloge présente et stable.
- Reset correctement maintenu puis relâché.
- Mode de configuration correct.
- Signaux d'état de configuration cohérents.
- Chaîne JTAG détectable.
📝 Tester mes connaissances - Quiz du chapitre