• [^] # Re: TCPA

    Posté par . En réponse à la dépêche Une faille majeure de la cryptographie courante. Évalué à 10.

    Pour faire simple...

    Quand tu exécutes une instruction, il faut d'abord la lire (chargement dans le pipeline d'instructions), décoder l'instruction et les éventuels arguments qui peuvent se trouver dans la mémoire centrale, dans un cache ou dans des registres puis exécuter... Tout ça se fait en plusieurs étapes dont le nombre varie en fonction de l'architecture du processeur. Quand une instruction en est à la phase d'exécution, la prochaine est en cours de décodage, la suivante encore en train d'être chargée dans le pipeline, etc.

    Seulement quand tu as un branchement conditionnel (if), il faut pouvoir déterminer quelle est l'instruction suivante à exécuter : celle du branchement "if true" ou celle du branchement "if false". La prédiction essaie de déterminer quelle sera celle que l'on va effectivement exécuter. Et si la prédiction a bon, tout se passe bien, on continue le flux d'instructions du pipeline. Sinon, il faut vider le pipeline car on y a chargé des instructions du mauvais branchement qui n'a pas à être exécuté. Il faut repartir avec un pipeline vide et on perd plusieurs étapes avant d'avoir à nouveau une instruction décodée prête à être exécutée.

    --
    http://www.tessier-net.org