13 / 37 · Vérification
Bilan de conception : équivalence de sélection et instant d'observation
Distinguer ce qu'une table de vérité suffit à vérifier et ce qui exige une observation de l'horloge.
Les leçons sont gratuites. Inscrivez-vous pour enregistrer vos progrès.
Lire les conditions et tracer l'ordre temporel
La sortie combinatoire vaut et sampled_y stocke y au front montantFront montant Instant où l'horloge passe de 0 à 1, distinct du niveau désignant tout l'intervalle CLK=1. En savoir plus. Supposons qu'une capture a déjà eu lieu avec . Ensuite, entre deux fronts, s passe à 1.
La question porte sur les valeurs après stabilisation des entrées et de la logique, mais avant le prochain front montant. Équivalence de la fonction et instant d'observation du 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 sont deux vérifications distinctes.
Le schéma montre l'ordre d'observation pour a=1 et b=0. Dans l'intervalle où sorties combinatoire et stockée diffèrent, expliquez laquelle représente les entrées actuelles et laquelle représente l'ancienne capture.
Voir les données du chronogramme
| Signal | Forme d'onde | Valeurs du bus |
|---|---|---|
| event | 234 | capturé → sel change → front suivant |
| sel | 01. | |
| y | 10. | |
| sampled_y | 1.0 |
Exercices de conception supplémentaires
- Prouvez sur les huit combinaisons que
y=(a & ~s) | (b & s)équivaut au 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 d'un bit. - Supprimer
sampled_yconserve la fonction combinatoire : quelle propriété temporelle disparaît ? - Expliquez pourquoi le RTL idéal ne garantit pas le matériel si la transition de s est trop proche du front montant.
Essayez vous-même
Tester seulement des vecteurs a=b dans un MUX quatre bits permet-il de détecter une sélection inversée ?
Lire l’explication
Non. Avec des données égales, chaque sélection donne le même résultat. Par exemple, testez a=0101, b=1010 avec s=0 et s=1 pour distinguer polarité de sélection et transmission de chaque bit.
Dans ces conditions, que vaut (y, sampled_y) juste avant le prochain front montant ?
Avec s=1, y=b=0. Au front précédent, s=0 avait stocké sampled_y=a=1. sampled_y ne passe à 0 qu'au prochain front montant, sous l'hypothèse que les entrées respectent setup et hold.