Signal d'horloge

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

En électronique, et particulièrement en électronique numérique, un signal d’horloge est un signal électrique oscillant qui rythme les actions d'un circuit. Sa période est appelée cycle d’horloge.

À chaque cycle d'horloge, des calculs peuvent être effectués en utilisant les sorties de bascules. L'horloge permet d'assurer que les données sont valides au cycle d'horloge suivant, c'est-à-dire que les calculs sont terminés et les résultats stabilisés. La durée du cycle doit donc être choisie en fonction de la durée maximale possible de chacun des calculs.

Influence de la fréquence[modifier | modifier le code]

On considère généralement qu'un circuit est d'autant plus rapide que la fréquence du signal d'horloge qui le synchronise est élevée. Cependant, une plus grande fréquence d'horloge ne permet d'accélérer un circuit donné que jusqu'à un certain seuil, et cause une augmentation de la consommation et de la température : au delà, certains signaux ne sont pas stabilisés à l'arrivée d'une impulsion, ce qui conduit à des erreurs. Augmenter la tension ou refroidir le circuit permet alors d'augmenter la vitesse de commutation des transistors, et donc d'augmenter la fréquence d'horloge.

Pour accélérer encore le circuit, on peut diminuer la taille des plus longs circuits combinatoires, par exemple en y ajoutant des étages de bascules intermédiaires : ils s'exécuteront alors en plusieurs cycles, permettant d'augmenter la fréquence et d’exécuter les autres calculs plus rapidement.

Dans le cas de processeurs, de nombreuses autres propriétés entrent en ligne de compte, comme le parallélisme au niveau des instructions, la prédiction de branchement ou le temps d'accès à la mémoire. La fréquence d'horloge ne permet donc de comparer que des processeurs de conception proche.

Gigue d'horloge[modifier | modifier le code]

Un des problèmes récurrents pour les horloges est la variation de leur période. Ce phénomène, appelé gigue d'horloge, cause des problèmes pour la fiabilité du circuit et complique la montée en fréquence : une période trop courte peut en effet activer les bascules avant que le résultat du circuit précédent ne soit disponible, ce qui oblige le concepteur à utiliser un cycle moyen suffisamment long pour que cela ne se produise pas.

Implémentation[modifier | modifier le code]

L’horloge qui génère ce signal étant en général reliée à un très grand nombre de bascules, elle possède un fan-out important, ce qui conduit à la conception d’un arbre d’horloge, et à l'insertion de répéteurs. On utilise des algorithmes spécialisés pour router ce circuit, de manière à contrôler au mieux les différences de délais.

D'autres méthodes ont été étudiées pour réduire l'énergie consommée par ce circuit et les différences de délais. On peut citer, par exemple, l'utilisation des propriétés de résonance des circuits RLC pour entretenir les oscillations[1].

Clock gating[modifier | modifier le code]

L'horloge peut représenter une part importante de la consommation d'énergie d'un circuit : les fronts d'horloge consomment de l'énergie en chargeant et déchargeant les fils, et en activant les bascules qui y sont reliées. Pour réduire la consommation des circuits synchrones, on utilise le clock gating, qui consiste à couper l'horloge dans les parties inactives du circuit.


Circuits sans horloge[modifier | modifier le code]

Même si la plupart des circuits électroniques complexes sont synchronisés par une horloge, il est possible d'en concevoir qui n'en possèdent pas. On parle alors de circuit asynchrone. Inversement, on parle de circuits synchrones pour ceux utilisant un unique signal d'horloge.


Références[modifier | modifier le code]

  1. (en) « Power-Saving Clock Scheme in New PCs », sur IEEE Spectrum,‎ 28 juin 2012