53 votes

Les tics d'horloge de l'unité centrale sont-ils strictement périodiques ?

La fréquence d'une unité centrale est-elle une valeur moyenne correspondant au nombre de tics d'horloge par seconde ou présente-t-elle une stabilité physique plus forte ?

À mon avis, il ne doit être ni stable ni instable. Existe-t-il des informations sur la variance d'un processeur ?

La durée du cycle d'une unité centrale est-elle strictement synchronisée avec la vibration du cristal ? Ou bien l'unité centrale doit-elle simplement s'assurer de réaliser un cycle avant le prochain tic-tac ?

50voto

misha256 Points 11065

Comme toute chose complexe, il est possible de décrire le fonctionnement d'une unité centrale à différents niveaux.

Au niveau le plus fondamental, une unité centrale est pilotée par une horloge précise. La fréquence de l'horloge peut changer ; pensez au SpeedStep d'Intel. Mais à tout moment, l'unité centrale est absolument à 100 % verrouillé au signal d'horloge.

Les instructions de l'unité centrale opèrent à un niveau beaucoup plus élevé. Une seule instruction est une chose complexe qui peut prendre de 1 à 5 minutes. de moins d'un cycle à des milliers de cycles pour compléter comme expliqué ici sur Wikipedia .

En gros, une instruction consommera un certain nombre de cycles d'horloge . Dans les processeurs modernes, en raison de technologies telles que les cœurs multiples, l'HyperThreading, le pipelining, la mise en cache, l'exécution hors ordre et l'exécution spéculative, le nombre exact de cycles d'horloge pour une instruction unique n'est pas garanti et varie à chaque fois que vous émettez une telle instruction !

EDITAR

Existe-t-il des informations sur la variance pour un processeur spécifique ?

Oui et non. 99,99% des utilisateurs finaux sont intéressés par performance globale qui peut être quantifiée par l'exécution de divers tests de référence.

Ce que vous demandez est une information très technique. Intel ne publie pas d'informations complètes ou exactes sur les instructions des processeurs. latence/débit .

Des chercheurs se sont attelés à la tâche pour tenter de résoudre ce problème. Voici deux documents PDF qui pourraient vous intéresser :

Malheureusement, il est difficile d'obtenir variance données. Citation du premier PDF :

n valeurs minimales. Les erreurs de cache, le désalignement et les exceptions peuvent augmenter considérablement le nombre d'horloges.

Une lecture intéressante néanmoins !

30voto

David Hammen Points 401

Les tics de l'horloge de l'unité centrale sont-ils de nature strictement périodique ?

Bien sûr que non. Même les meilleures horloges ne sont pas strictement périodiques. Les lois de la thermodynamique disent le contraire :

  • Loi de Zéro : L'univers joue un vilain petit jeu avec vous.
  • Première loi : Vous ne pouvez pas gagner.
  • Deuxième loi : Mais il se peut que vous atteigniez le seuil de rentabilité lors d'une journée très froide.
  • Troisième loi : Il ne fait jamais aussi froid.

Les concepteurs des meilleures horloges s'efforcent de contourner les lois de la thermodynamique. Ils ne peuvent pas gagner, mais ils sont très, très près d'atteindre le seuil de rentabilité. L'horloge de votre processeur ? Elle n'a rien à voir avec les meilleures horloges atomiques. C'est pourquoi les Protocole de temps réseau existent.

Prédiction : Nous assisterons à nouveau à un certain chaos lorsque les meilleures horloges atomiques du monde passeront de 2015 30 juin 23:59:59 UTC à 2015 30 juin 23:59:60 UTC à 2015 1 juillet 2015 00:00:00 UTC. Trop de systèmes ne reconnaissent pas les secondes intercalaires et ont réglé leur niveau de sécurité sur deux (ce qui empêche un changement de temps de plus d'une seconde). L'instabilité de l'horloge de ces systèmes signifie que la seconde intercalaire du Network Time Protocol sera rejetée. Un certain nombre d'ordinateurs tomberont en panne, comme ce fut le cas en 2012.

22voto

MSalters Points 8049

Vers l'an 2000, lorsque la vitesse d'horloge des processeurs a commencé à se rapprocher de celle des téléphones mobiles, il est devenu courant d'ajouter une variation à la vitesse d'horloge réelle. La raison en est simple : Si l'horloge de l'unité centrale est exactement à 900 MHz, toutes les interférences électroniques sont générées à cette fréquence. Si la fréquence de l'horloge varie légèrement entre 895 et 905 Mhz, les interférences sont également réparties sur cette plage.

Cela a été possible parce que les unités centrales de traitement modernes sont limitées par la chaleur. Ils n'ont aucun problème à fonctionner un peu plus vite pendant une courte période, car ils peuvent se refroidir lorsque l'horloge est ralentie par la suite.

22voto

UltimateBrent Points 6167

Je suis concepteur de logique numérique. Le temps réel nécessaire pour qu'un réseau logique change en réponse à un signal d'entrée est le temps de réponse. délai de propagation . Considérez le système comme :

registers A,B,C... ---> logic cloud ---> registers A',B',C'

L'"horloge de lancement" est le front d'horloge au moment où la première série de registres change. L'"horloge de capture" est le front d'horloge suivant, une période plus tard. Pour que le système fonctionne, la sortie du nuage logique doit être stable avant l'arrivée de l'horloge de capture.

Le processus permettant de s'assurer que cela fonctionne est l'analyse temporelle. À l'aide d'une simulation du système basée sur les lois de la physique, il faut déterminer les éléments suivants cas le plus défavorable l'heure d'arrivée de n'importe quelle entrée à n'importe quelle sortie. Le plus grand de ces nombres dans le système définit la période d'horloge minimale.

Nota cas le plus défavorable . Le temps de propagation réel sera plus court, mais il dépend des variations du processus de fabrication, de la température actuelle et de la tension de la puce ( PVT ). Cela signifie concrètement que vous pouvez appliquer une horloge plus rapide (overclocking) et que cela peut fonctionner. Il se peut aussi qu'il commence à produire des erreurs, par exemple en décidant que 0x1fffffff + 1 = 0x1f000000 si le bit de retenue n'arrive pas à temps.

Les puces peuvent également avoir plus d'une horloge à bord (en général, le FSB est plus lent que le cœur), et l'horloge réelle peut être augmentée ou diminuée à des fins de contrôle thermique ou varier (réponse de MSalter sur l'utilisation de l'étalement du spectre pour passer les tests CEM).

2voto

David Schwartz Points 60868

La durée des instructions d'une unité centrale est-elle strictement synchronisée avec la vibration du cristal ? Ou bien l'unité centrale doit-elle simplement s'assurer de réaliser une instruction avant le prochain tic-tac ?

Ni l'un ni l'autre. La durée de l'instruction sera un certain nombre de tics d'horloge, mais ce nombre peut varier en fonction des exigences de l'instruction. Par exemple, si une instruction ne peut pas progresser tant qu'un emplacement mémoire particulier ne se trouve pas dans le cache L1, l'instruction ne sera pas terminée avant le prochain tic d'horloge. Aucune progression de l'instruction ne sera effectuée avant que cela ne se produise.

Mais lorsque l'unité centrale décide de faire quelque chose, la méthode de base consiste à configurer ses commutateurs internes de manière à ce qu'une information particulière soit transmise à une partie particulière de l'unité centrale. Il attend ensuite que l'entrée arrive à cette partie et que la sortie arrive à la partie suivante. Cette attente est le but de l'horloge.

Imaginez un circuit physique qui prend deux entrées binaires et les additionne, puis émet la somme sur un troisième jeu de fils. Pour effectuer une addition, l'unité centrale doit faire en sorte que les deux nombres à additionner parviennent à cet additionneur et que les sorties soient dirigées, par exemple, vers un registre de l'unité centrale. L'unité centrale ne peut pas dire au registre de stocker la sortie avant que les entrées n'atteignent l'additionneur, que l'additionneur ne produise la sortie et que la sortie n'atteigne le registre. C'est la raison d'être de l'horloge : fixer le temps d'attente entre le moment où les entrées sont envoyées quelque part et celui où la sortie est prête à être utilisée.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X