Brevet FR2860612A1 — publié le 20050408

Dans une unité centrale (UC), le fonctionnement des divers composants logiques est contrôlé par une horloge système qui est généralement générée en utilisant une boucle de phase bloquée (PLL). Le fonctionnement des divers composants logiques est interrelié et, par conséquent, diverses contraintes de synchronisation des chemins de circuit existent traditionnellement. La synchronisation actuelle associée aux chemins de circuit pendant le fonctionnement de l'UC peut dépendre de la tension fournie aux divers composants de l'UC. Pour garantir que les contraintes de synchronisation sont satisfaites et que l'UC fonctionne comme attendu, la fréquence de l'horloge système peut être sélectionnée selon les critères du cas le plus défavorable. Dans une UC relativement grande et complexe, la tension d'alimentation fournie à divers composants de l'UC peut varier pour de nombreuses raisons. Si la fréquence de l'horloge système est sélectionnée selon les critères du cas le plus défavorable pour tous les divers composants, les performances du système peuvent être sensiblement réduites. Dans un mode de réalisation, une unité centrale (UC) comprend plusieurs zones d'horloge. Chaque zone d'horloge comprend au moins un capteur qui génère un signal indicatif d'une tension d'alimentation à l'intérieur de la zone d'horloge, un générateur d'horloge pour fournir une horloge à fréquence variable à la zone d'horloge, un premier contrôleur pour contrôler une fréquence de fonctionnement du générateur d'horloge en réponse au au moins un capteur, dans lequel le premier contrôleur contrôle en outre la fréquence de fonctionnement en réponse à la communication des ajustements de fréquence à partir des premiers contrôleurs dans d'autres zones d'horloge à l'intérieur d'un cycle de latence, et un second contrôleur qui fournit un signal de surcharge, qui est combiné aux signaux d'ajustement à partir du premier contrôleur pour le générateur d'horloge, en réponse à la communication des ajustements de fréquence à partir des autres zones d'horloge au-delà d'un cycle de latence. La figure 1 décrit une unité centrale (UC) comportant plusieurs zones d'horloge. La figure 2 décrit un contrôleur hiérarchique pour synchroniser la fréquence et la phase entre les zones d'horloge. La figure 3 décrit une chaîne Markov pour une machine d'état pour un contrôleur hiérarchique. Certains modes de réalisation représentatifs sont destinés à des systèmes et des procédés pour fournir des horloges à fréquence variable à une pluralité de zones à l'intérieur d'une UC. Chaque zone peut comprendre un ou plusieurs détecteurs de tension régionaux. En réponse aux tensions détectées, la fréquence d'une horloge générée pour la zone respective peut être modifiée comme il se doit. La variation de la fréquence d'horloge peut être mise en uvre par un contrôleur de phase. Lorsque le contrôleur de phase change sa fréquence d'horloge, le contrôleur de phase peut communiquer la modification aux zones à l'intérieur d'un cycle de latence. Les contrôleurs de phase recevant une communication d'un ajustement de fréquence peuvent changer leur fréquence pendant le cycle suivant pour s'adapter au chevauchement de fréquence. Egalement, à cause de la latence de communication, les autres contrôleurs de phase adressent le chevauchement de phase généré par la différence en fréquence qui existe pendant le seul cycle de latence. Dans certains modes de réalisation représentatifs, une UC suffisamment grande est utilisée pour engendrer la disposition des contrôleurs de phase sélectionnés au-delà du cycle de latence. Certains modes de réalisation représentatifs utilisent un contrôleur hiérarchique respectif pour chaque zone pour adresser un chevauchement de phase et de fréquence créé lorsqu'un contrôleur de phase particulier, qui est mis à disposition au-delà du cycle de latence, engendre la modification de la fréquence d'horloge à l'intérieur de sa zone. Pour faciliter la discussion de certains modes de réalisation représentatifs, la zone dans laquelle l'ajustement d'origine est effectué sera appelée la zone de déclenchement et' toutes les autres zones seront appelées les zones cibles . Il en résulte un ajustement dans une zone de déclenchement en réponse aux capteurs de tension, les zones cibles subissent une perte de chevauchement de phase et de fréquence qui est ramené à zéro. Dans certains modes de réalisation représentatifs, le contrôleur hiérarchique s'interface avec le contrôleur de phase pour ramener le chevauchement de phase et de fréquence à zéro. Précisément, chaque contrôleur de phase peut posséder une capacité limitée d'ajustement de la fréquence d'horloge de sa zone pour un cycle unique. Le contrôleur hiérarchique peut utiliser une capacité d'ajustement inutilisée du contrôleur de phase pour ramener à zéro les chevauchements de phase et de fréquence associés aux zones audelà d'un cycle de latence. La figure 1 décrit l'UC 100 à un niveau relativement élevé selon un mode de réalisation représentatif. L'UC 100 peut contenir, comme cela est connu, un grand nombre de blocs et de composants fonctionnels (qui ne sont pas illustrés). L'UC 100 comprend une structure pour fournir des horloges respectives aux blocs et composants fonctionnels selon une pluralité de zones (illustrées de 10la à 101d). Les zones 10la à 101d sont séparées les unes des autres par des quantités variables de latence de communication. Par exemple, les zones 10la à 101c sont séparées par un cycle de latence et les zones 101b et 101d sont séparées par un cycle de latence. Les zones 10la et 101c sont séparées des zones 101b et 101d par plus d'un cycle de latence. Chaque zone comprend un générateur d'horloge variable respectif 105. Les générateurs d'horloge variable 105 génèrent une horloge locale pour la zone représentative qui est dérivée de la boucle de phase bloquée maître (PLL) 106. Dans certains modes de réalisation représentatifs, les générateurs d'horloge variable 105 peuvent changer les périodes de leur horloge par -1 top d'horloge , +1 top d'horloge et +2 top d'horloge , le top d'horloge correspondant à une fraction appropriée (par exemple, 1/64ième) de la période de l'horloge d'entrée à partir du maître PLL 106. Chaque contrôleur de phase 104 reçoit des signaux d'entrée à partir d'un ou de plusieurs détecteurs de tension régionaux 102 (ou, en variante, de capteurs thermiques) pour contrôler les générateurs d'horloge variable 105. Précisément, chaque détecteur de tension régional 102 surveille la tension de l'alimentation électrique de l'UC à l'intérieur de sa zone localisée. Lorsque la tension à l'intérieur de la zone localisée respective chute, il croise un seuil approprié pour garantir des contraintes de synchronisation des chemins de circuit à l'intérieur de cette zone localisée, le détecteur de tension régional 102 génère un signal indicatif de la condition de tension pour la communication au contrôleur de phase 104. Le contrôleur de phase 104, en retour, fournit un signal approprié au générateur d'horloge variable 105 pour modifier sa fréquence à l'intérieur du même cycle de réception du signal à partir du détecteur de tension régional 102. Lorsque l'un des contrôleurs de phase 104 (un contrôleur de déclenchement) engendre une modification dans la fréquence de l'horloge locale à l'intérieur de cette zone, le contrôleur de phase 104 communique cette information aux autres contrôleurs de phase 104 (contrôleurs cibles) à l'intérieur d'un cycle de latence. Par exemple, le contrôleur de phase 104 de la zone 101a communique ses ajustements de fréquence d'horloge au contrôleur de phase 104 de la zone 101c. Comme la communication se produit selon un cycle de latence, l'horloge associée au contrôleur de phase cible 104 qui reçoit la communication de l'ajustement de fréquence d'horloge est également en discordance de phase par rapport à l'horloge associée à l'ajustement de fréquence. Pour compenser le défaut d'alignement de phase, le contrôleur de phase cible 104 ajuste temporairement la fréquence de l'horloge au-delà de l'ajustement de fréquence communiqué pour ramener le défaut d'alignement de phase à zéro. Lorsque le défaut d'alignement est ramené à zéro, le contrôleur de phase cible 104 fait un autre ajustement de fréquence (dans le sens opposé) provoquer la correspondance de la fréquence de son horloge locale avec la fréquence de l'horloge du contrôleur de phase de déclenchement 104. Certains modes de réalisation représentatifs utilisent des contrôleurs hiérarchiques 103 pour gérer les chevauchements de phase et de fréquence entre les zones qui sont séparées par plus d'un cycle de latence. De plus, comme les générateurs d'horloge variable 105 sont limités dans leur capacité à ajuster les périodes de leurs horloges, les contrôleurs hiérarchiques 103 utilisent la capacité d'ajustement qui est inutilisée par les contrôleurs de phase 104 pour ramener à zéro les chevauchements de phase et de fréquence des zones au-delà d'un cycle de latence. Comme les contrôleurs hiérarchiques 103 peuvent ne pas nécessairement être capable de provoquer l'ajustement de fréquence à un moment particulier quelconque (du fait d'ajustements opposés par les contrôleurs de phase 104), les contrôleurs hiérarchiques 103 peuvent accumuler un défaut d'alignement de phase sur plusieurs cycles pour empêcher un défaut d'alignement permanent entre les zones 101. La figure 2 décrit une mise en uvre d'un contrôleur hiérarchique 103 couplé à un contrôleur de phase 104 selon un mode de réalisation représentatif. Une pluralité de lignes d'entrée fournit des signaux pour contrôler l'ajustement de l'horloge locale. La ligne d'entrée CORE reçoit la communication des ajustements de fréquence à partir d'autres zones qui sont séparées par plus d'un cycle de latence. La ligne d'entrée indiquée par R reçoit des signaux du ou des détecteurs de tension régionaux 102 associés à la zone locale. La ligne D reçoit des signaux d'ajustements de fréquence à partir d'autres zones qui sont séparées par un cycle de latence. La ligne PCSM est utilisée pour basculer l'état du contrôleur de phase 104 de contrôleur de phase 104 à contrôleur hiérarchique 103. Le filtre C 201 traite les signaux reçus à partir de la ligne R , de la ligne D et de la ligne CORE . L'objectif du filtre C 201 est de filtrer la communication des ajustements de fréquence qui provoquerait un ajustement de fréquence qui serait duplicatif de l'ajustement de fréquence déjà produit en réponse aux signaux à partir de l'une ou des deux lignes R et D . Précisément, si le contrôleur de phase 104 dans une autre zone communique un ajustement de fréquence qui s'est produit simultanément avec un ajustement de fréquence dans la zone locale, le filtre C 201 détecte l'occurrence et filtre le signal d'ajustement de fréquence distant reçu à partir de la ligne CORE. La logique de prédiction de bloc 202 reçoit des signaux à partir des lignes R , D et PCSM . A partir de ces signaux, la logique de prédiction de bloc 202 détermine si une capacité d'ajustement inutilisée est disponible, c'est-à-dire, si le contrôleur de phase 104 provoquera de façon indépendante un ajustement maximum ascendant ou descendant dans la fréquence d'horloge. Si aucune capacité d'ajustement de fréquence n'est disponible, la logique de prédiction de bloc 202 peut générer un signal indiquant que le contrôleur hiérarchique 103 peut uniquement réaliser un ajustement de fréquence limité (pour ne pas dire nul) dans le cycle d'alimentation. En réponse au signal de la logique de prédiction de bloc 202, la logique de chevauchement de fréquence 203 met en uvre une fonctionnalité qui détecte des chevauchements de fréquence sur des cycles multiples. Par exemple, en utilisant la logique de chevauchement de fréquence 203, le contrôleur hiérarchique 103 peut expliquer la possibilité que les chevauchements de fréquence associés aux ajustements de fréquence distants ne puissent pas être adressés immédiatement du fait du manque de capacité d'ajustement inutilisée associée au contrôleur de phase 104. De la même manière, la logique de chevauchement de phase 204 accumule un chevauchement de phase sur plusieurs cycles. La logique de machine d'état du contrôleur hiérarchique (HCSM) 205 génère un signal de surcharge communiqué au contrôleur de phase 104. Le signal de surcharge utilise la capacité d'ajustement de fréquence disponible pour ramener à zéro le chevauchement de fréquence et de phase entre les zones séparées par plus d'un cycle de latence. Le signal de surcharge est communiqué du contrôleur hiérarchique 103 au contrôleur de phase 104 où il est additionné avec les ajustements de fréquence du contrôleur de phase 104 soumis à des capacités d'ajustement maximales. La figure 3 décrit une chaîne Markov pour représenter les états et les positions d'état qui peuvent être mis en uvre par la logique HCSM 208 selon un mode de réalisation représentatif. Dans la notation utilisée 2860612 8 pour les transitions d'état, le terme C fait référence au signal filtré généré par le filtre 201. Le terme FM fait référence à la quantité de chevauchement de fréquence qui existe entre l'horloge locale et la zone d'horloge virtuelle , qui représente où chaque phase et chaque fréquence de zone d'horloge seraient si des réponses instantanées à tous les capteurs de tension se produisaient. Le terme PM fait référence à la quantité de chevauchement de phase qui existe entre l'horloge locale et l'horloge virtuelle à l'intérieur de l'UC 100. ZERO fait référence à la condition dans laquelle le chevauchement de phase (PM) égale zéro, SLOW fait référence à la condition dans laquelle le chevauchement de phase est supérieur à zéro top d'horloge et inférieur à dix tops d'horloge et FAST fait référence à la condition dans laquelle le chevauchement de phase est supérieur à dix tops d'horloge. Le terme OD fait référence à la sortie du contrôleur de phase 104 du contrôleur hiérarchique 103 qui se produit pendant le cycle au cours duquel la transition d'état se produit. L'état 301 représente l'état dans lequel la logique HCSM 208 ne génère pas actuellement de signal de surcharge pour la communication au contrôleur de phase 104. L'état 302 représente l'état dans lequel les chevauchements de fréquence et de phase sont ramenés à zéro selon un état ordinaire. L'état 303 représente l'état dans lequel le chevauchement de phase est adressé selon un état d'approche rapide . Précisément, si un chevauchement de fréquence ou de phase suffisamment large est détecté, la logique HCSM 208 tentera de ramener le chevauchement à zéro aussi rapidement que possible pour tenter de maintenir le défaut d'alignement d'horloge intercore à l'intérieur de niveaux acceptables. Ainsi, les transitions d'état comme illustrées sur la figure 3 dépendent largement de si ce chevauchement de phase est supérieur à dix tops d'horloge (c'est- à-dire que la condition FAST est présente) et de la quantité de chevauchement de fréquence. Bien que le chevauchement de phase entre diverses zones ne soit pas strictement limité à un nombre discret prédéterminé de tops d'horloge, le chevauchement de phase est limité à cause de la nature sérieusement amortie de la compensation de phase. Précisément, l'analyse statistique peut être utilisée pour démontrer que le défaut d'alignement d'horloge (chevauchement de phase) entre les zones sera maintenu à des niveaux acceptables, en tout dans de très rares circonstances, lorsqu'une machine d'état est mise en uvre de façon appropriée selon certains modes de réalisation représentatifs. Certains modes de réalisation représentatifs peuvent fournir de nombreux avantages. Précisément, certains modes de réalisation représentatifs permettent d'apporter des réponses relativement rapides aux tensions transitoires à l'intérieur de l'UC. En permettant de telles réponses, des bandes de garde relativement petites pour les problèmes de synchronisation sont requises. De la même manière, les hypothèses du cas le plus défavorable pour analyser les contraintes de synchronisation dans la conception de l'US sont réduites; Certains modes de réalisation représentatifs permettent en outre à de telles réponses de se produire sur des UC relativement grandes. En outre, le défaut d'alignement d'horloge (chevauchements de phase) pour divers composants à l'intérieur d'une grande UC peut être maintenu à l'intérieur de niveaux acceptables en utilisant une réponse appropriée aux chevauchements de phase excessifs associés aux ajustements de fréquence. Bien entendu, l'invention n'est pas limitée aux exemples de réalisation ci-dessus décrits et représentés, à partir desquels on pourra prévoir d'autres modes et d'autres formes de réalisation, sans pour autant sortir du cadre de l'invention. REVENDICATIONS 1. Unité centrale (UC) qui comprend plusieurs zones d'horloge, ladite UC comprenant: dans chaque zone d'horloge, au moins un capteur (102) qui génère un signal 5 indicatif d'une tension d'alimentation à l'intérieur de ladite zone d'horloge; un générateur d'horloge (105) pour fournir une horloge à fréquence variable à ladite zone d'horloge; un premier contrôleur (104) pour contrôler une fréquence de fonctionnement dudit générateur d'horloge en réponse audit au moins un capteur, dans lequel ledit premier contrôleur contrôle en outre ladite fréquence de fonctionnement en réponse à la communication des ajustements de fréquence à partir des premiers contrôleurs dans d'autres zones d'horloge à l'intérieur d'un cycle de latence; et un second contrôleur (103) qui fournit un signal de surcharge, qui est combiné avec des signaux d'ajustement dudit premier contrôleur pour ledit générateur d'horloge, en réponse à la communication des ajustements de fréquence à partir d'autres zones d'horloge au-delà d'un cycle de latence. 2. UC selon la revendication 1, dans laquelle ledit générateur d'horloge met uniquement en uvre des ajustements d'horloge limités par cycle d'horloge. 3. UC selon la revendication 1, dans laquelle chaque zone locale comprend: une logique de chevauchement de fréquence pour maintenir l'enregistrement du chevauchement de fréquence entre ladite zone d'horloge et les autres zones d'horloge; et une logique de chevauchement de phase pour maintenir l'enregistrement du chevauchement de phase entre ladite zone d'horloge et les autres zones d'horloge. 2860612 12 4. UC selon la revendication 3, dans laquelle ledit second contrôleur applique un ajustement de fréquence plus large lorsque le chevauchement de phase enregistré par ladite logique de chevauchement de phase dépasse une valeur de seuil. 5. UC selon la revendication 1, dans laquelle chaque zone locale comprend en outre: un filtre pour filtrer la communication des ajustements de fréquence à partir d'autres zones d'horloge au-delà d'un cycle de latence pour appliquer des ajustements de fréquence concomitant exécutés par ledit premier contrôleur dans ladite zone locale. 6. Procédé pour faire fonctionner une unité centrale (UC) qui comprend plusieurs zones d'horloge, ledit 15 procédé comprenant: la génération d'une horloge de fréquence variable respective pour chaque zone d'horloge; le fonctionnement d'un capteur (102) dans chaque zone d'horloge pour générer un signal indicatif d'une tension d'alimentation à l'intérieur de chaque zone d'horloge respective; l'ajustement, par un premier contrôleur (104) de ladite horloge à fréquence variable respective dans chaque zone d'horloge en réponse audit signal généré par ledit capteur; l'ajustement, par ledit premier contrôleur, de ladite horloge à fréquence variable respective dans chaque zone d'horloge en réponse à la communication des ajustements de fréquence dans d'autres zones d'horloge à l'intérieur d'un cycle de latence; et l'ajustement, par un second contrôleur (103), de ladite horloge à fréquence variable respective en générant un signal de surcharge, qui est combiné à des signaux d'ajustement à partir dudit premier contrôleur d'horloge, en réponse à la communication d'ajustements de fréquence à partir d'autres zones d'horloge au-delà du cycle de latence. 7. Procédé selon la revendication 6, dans lequel chaque horloge à fréquence variable peut uniquement être ajustée par un nombre limité d'ajustements discrets par cycle d'horloge. 8. Procédé selon la revendication 7, comprenant: la détermination d'une quantité respective de capacité d'ajustement d'horloge de chaque horloge à fréquence variable qui est inutilisée par ledit premier contrôleur respectif. 9. Procédé selon la revendication 6, comprenant en outre. le maintien d'un enregistrement du chevauchement de 15 fréquence entre chaque zone d'horloge respective et les autres zones d'horloge; et le maintien d'un enregistrement du chevauchement de phase entre chaque zone d'horloge respective et d'autres zones d'horloge. 10. Procédé selon la revendication 6, comprenant en outre. le filtrage, à l'intérieur de chaque zone d'horloge, de la communication des ajustements de fréquence à partir d'autres zones d'horloge au-delà du cycle de latence pour appliquer des ajustements de fréquence concomitants exécutés par chaque premier contrôleur respectif dans ladite zone d'horloge respective.