10 / 24 · Concept
Latence, débit et intervalle d’initiation
Calculez le délai d’une transaction séparément de la cadence soutenue des résultats.
Les leçons sont gratuites. Inscrivez-vous pour enregistrer vos progrès.
Terminer plus tôt diffère de terminer plus souvent
La latence mesure le temps entre l’acceptation d’une entrée et la livraison de sa sortie. Le débit compte les transactions livrées par durée d’observation. L’intervalle d’initiation, II, est l’espacement minimal en cycles entre de nouveaux démarrages. Exprimez la latence en cycles ou en nanosecondes, le débit en transactions par cycle ou par seconde et II en cycles par transaction.
Tous les transferts ont ici lieu aux fronts montants. Dans un pipeline à deux registres, une entrée acceptée au front 0 devient visible après le front 1 et est transférée au front 2. La latence entre acceptation et livraison est de deux cycles. Des étages différents traitent simultanément des transactions différentes : un pipeline plein et sans blocage livre donc un résultat par front. II=1 n’implique pas latency=1.
| Structure | Latence de livraison | II | Débit soutenu sans blocage |
|---|---|---|---|
| Opérateur à un registre | 1 cycle | 1 | 1 transaction/cycle |
| Pipeline à deux étages | 2 cycles | 1 | 1 transaction/cycle |
| Calcul partagé sur quatre fronts | Dépend de l’ordonnancement de l’interface | Supérieur à 1 | Inférieur à 1 transaction/cycle |
Incluez la période d’horloge dans les comparaisons de cadences physiques. Supposons que le calcul combinatoire dure six nanosecondes et que le surcoût des registres avec la marge prenne 0.5 ns. Un étage conduit à une période estimée de 6.5 ns. Des étages équilibrés de trois nanosecondes conduisent à 3.5 ns. Les deux ont II=1, soit environ 153.8 et 285.7 millions de transactions par seconde. Pourtant, le délai d’un élément peut passer de 6.5 à sept nanosecondes. Ces calculs sont illustratifs et ne correspondent pas à une temporisation mesurée sur une implémentation.
L’étage le plus lent limite l’horloge. Une répartition cinq-plus-un conduit à 5.5 ns, moins bonne qu’une répartition équilibrée. Des registres supplémentaires ajoutent aussi des coûts de stockage, de routage et de commande ; examinez la temporisation réelle de l’implémentation.
Pour quatre entrées acceptées aux fronts 0 à 3, les sorties sont transférées aux fronts 2 à 5. Le remplissage et la vidange influencent les lots courts. Précisez la fenêtre de mesure. En présence de blocages, la latence varie selon la transaction et les entrées présentées mais jamais acceptées ne comptent pas. Enregistrez séparément l’acceptation des entrées, la livraison des sorties et les cycles bloqués avant d’optimiser un goulot d’étranglement supposé.
Essayez vous-même
Pour un pipeline à trois étages avec II=1 et une horloge de quatre nanosecondes, trouvez le débit soutenu et la latence de livraison. Si la première entrée est acceptée au front 0, à quel front la cinquième sortie est-elle livrée ?
Lire l’explication
Le débit est de 250 millions de transactions par seconde et la latence de 12 ns. La cinquième entrée est acceptée au front 4 et livrée au front 7, en l’absence de blocages.