T_hold et T_setup m'aident à comprendre?
Mon examen a lieu demain et il y a quelque chose que je ne comprends pas dans le matériel, alors j'espère vraiment obtenir de l'aide.
Donner le circuit suivant:

Et étant donné que les deux FF sont connectés à la même horloge mais que FF2 l'obtient après un délai positif (t_skew après que l'horloge monte), mon professeur a dit que cela nous aide dans T_setup.
Je comprends ce point car FF2 a plus de temps pour se préparer à une nouvelle entrée à traiter, mais ce que je ne comprends pas, c'est pourquoi t_skew sera "nuisible" quand on parle de T_hold?
Réponses
ce que je ne comprends pas, c'est pourquoi t_skew sera "nuisible" en parlant de T_hold?
La violation de mise en attente se produit lorsque les données lancées par FF1 atteignent FF2 «trop tôt» qu'elles ne le devraient.
Supposons qu'une donnée ait été lancée par FF1 sur le bord de l'horloge à la fois \$t\$. Après un décalage d'horloge de dire \$\Delta t\$, le même front d'horloge atteint FF2 à \$t+\Delta t\$. Dans ce front d'horloge, FF2 doit capturer les données lancées par FF1 sur le front précédent (c'est-à-dire le front d'horloge juste avant \$t\$, pas celui de \$t\$). Tout comme toute bascule, FF2 a également un temps de maintien \$t_{hold}\$. Alors quoi \$t_{hold}\$dit est que, pour qu'une donnée soit correctement capturée par FF2, les données doivent rester valides pour \$t_{hold}\$heure après l'apparition du front d'horloge à FF2 (en supposant que la configuration est déjà satisfaite). Imaginez maintenant, si les données lancées par FF1 à \$t \$a déjà «parcouru» le chemin combinatoire et atteint FF2 dans cette fenêtre de temps . Cela corrompra maintenant les données "précédentes" qui sont supposées être les données capturées par FF2 dans ce front d'horloge à \$t+\Delta t\$. On dit maintenant que FF2 est conduit à la métastabilité C'est ce qu'on appelle la violation Hold.
Intuitivement, dans le scénario ci-dessus, la probabilité de violation de Hold aurait pu être réduite:
- Si le délai combinatoire entre FF1 et FF2 était plus élevé , car les données lancées par FF1 arrivent maintenant un peu en retard à FF2.
- Si l'horloge est biaisée \$\Delta t\$était plus bas , car le front de l'horloge apparaît un peu tôt à FF2.
La même idée peut être analysée mathématiquement si vous écrivez l'équation pour satisfaire Hold à FF2 - $$t_{Clk-Q-FF1}+t_{combi}\ge t_{hold}+\Delta t$$ $$\implies (t_{Clk-Q-FF1}+t_{combi}-t_{hold})\ge \Delta t \tag 1$$
Comme vous pouvez le voir, pour une valeur constante à la LHS, si la RHS augmente, les chances de violer cette condition d'égalité augmentent. D'où la conclusion - si le biais d'horloge augmente, il est «mauvais» pour la synchronisation de maintien .