Altifigence Academy

23 / 63 · Concept

Sélection combinatoire et latence de la sortie enregistrée

Analyser les changements d'interface et de latence lorsque le résultat du MUX est enregistré.

Pourquoi ajouter un registre en sortie ?

La sortie combinatoire d'un MUXMultiplexeur Circuit combinatoire reliant une entrée parmi plusieurs à la sortie selon une sélection. La correspondance entre bits de sélection et numéro d'entrée doit être spécifiée. En savoir plus peut changer chaque fois que sélection ou données changent. Un registreRegistre Circuit stockant plusieurs bits d'état. Les registres synchrones du cours capturent leur entrée définie sur un front d'horloge. En savoir plus permet à l'étape suivante d'utiliser une valeur définie au front d'horloge, mais modifie l'instant d'observation et la latence.

Notons ak,bk,ska_k,b_k,s_k les entrées prêtes juste avant le front k, et qk+1q_{k+1} la valeur stockée après :

yk=sk‾ak+skbk,qk+1=yky_k=\overline{s_k}a_k+s_kb_k,\qquad q_{k+1}=y_k

Définir une latence exige de préciser quand l'entrée est présentée et la sortie observée. Si entrée et sortie d'interface sont toutes deux des sorties de registres, le nombre d'étages intermédiaires détermine la latence en cycles.

Commencer par un petit tableau temporel

Avant le frontabselyq après le front
101000
201111
310100

Si sel change entre les fronts 1 et 2, y change d'abord et q reste constant jusqu'au front 2. Comparer directement q au changement d'entrée peut donner l'apparence d'un décalage d'un cycle.

Les colonnes sont des observations ordonnées, pas une échelle de temps uniforme. Avec a=0 et b=1, repérez le maintien de q entre le changement de sel et le front suivant.

y change avant la mise à jour de q
Voir les données du chronogramme
Données du chronogramme : chaque caractère représente un intervalle ; un point maintient l'état précédent ; p représente un cycle d'horloge.
SignalForme d'ondeValeurs du bus
event23452Après E1 → sel → 1 → Après E2 → sel → 0 → Après E3
sel01.0.
y01.0.
q0.1.0

Ce que le registre ne résout pas

Une entrée instable près du front de capture reste dangereuse malgré le registre. Une sélection venant d'un autre domaine d'horloge nécessite une synchronisation dédiée. Les glitches de y ne disparaissent pas nécessairement non plus : vérifiez si l'interface utilise seulement q ou si d'autres chemins utilisent aussi y.

Essayez vous-même

Considérez registre d'entrée → MUX → registre de sortie, sur la même horloge. À quel front le nouveau résultat du registre d'entrée au front k apparaît-il normalement dans le registre de sortie ?

Lire l’explication

Dans un chemin synchrone normal d'un cycle, la capture a lieu au front k+1. Au front k, le registre de sortie voit l'ancienne valeur du registre d'entrée ; la nouvelle subit le retard clock-to-Q puis le retard combinatoire pour préparer le front suivant. Elle ne traverse pas instantanément deux registres au même front.

Votre choix s’applique à ce navigateur. Modifiez-le à tout moment en bas de page.