Latch vs bascule : les différences expliquées
Tous deux stockent un bit, mais leur déclenchement diffère. Un latch est sensible au niveau : tant que son signal d'activation est actif, il est transparent et transmet directement l'entrée à la sortie ; lorsque l'activation devient inactive, il conserve la valeur. Une bascule (flip-flop) est déclenchée sur front : elle ne capture l'entrée qu'au front d'horloge et ignore les changements entre deux fronts. Une bascule est constituée de deux latchs fonctionnant en phases opposées.
| Critère | Latch | Bascule (flip-flop) |
|---|---|---|
| Déclenchement | Sensible au niveau : agit tant que l'activation est active | Déclenchée sur front : agit uniquement au front montant ou descendant de l'horloge |
| Comportement de la sortie | Suit l'entrée tant qu'il est transparent, puis la conserve | Ne change qu'au front d'horloge, stable le reste du temps |
| Construction | Un seul étage de mémorisation | Deux latchs en série, fonctionnant en phases opposées (maître-esclave) |
| Taille et consommation | Plus petit, avec une consommation plus faible | Plus grande, environ deux fois plus de transistors |
| Analyse temporelle | Plus complexe : emprunt de temps (time borrowing) pendant la phase transparente | Simple : temps de setup et de hold autour du front d'horloge |
| Sensibilité aux glitches | Les glitches et les courses traversent le latch lorsqu'il est transparent | Insensible aux changements de l'entrée entre les fronts d'horloge |
| Usages typiques | Conceptions rapides sur mesure avec emprunt de temps, cellules de clock gating | Registres, compteurs et machines à états en conception synchrone |
Les valeurs indiquées sont des ordres de grandeur typiques et varient selon la génération de procédé et le produit.