• Aucun résultat trouvé

Deuxi` eme partie

4.4. D´ EFINITION DES CANAUX DE D´ ECLENCHEMENT

4.4.2 Structure g´en´erale des algorithmes

L’ensemble des algorithmes est construit sur des choix conditionnels multiples bas´es sur des crit`eres de physique [26] utilisant les meilleurs candidats s´electionn´es par les sous-d´etecteurs et des variables globales caract´erisant la collision. L’annexe G pr´esente deux algorithmes de s´election ainsi qu’une interpr´etation de ces algorithmes.

Par exemple, une collision au niveau 0 d´eclenchement est accept´ee si l’´energie transverse de l’´electron (Ee

T) est sup´erieure `a son seuil, condition (4.1), ou si la somme des deux muons de plus haute ´energie transverse (ΣPµ1µ2

T ) est sup´erieure `a son seuil, condition (4.2). Chacune de ces conditions est combin´ee avec une condition globale1 (nombre d’interaction N bhits=1) pour former un canal de physique de d´eclenchement.

L0DU (Oui) =

(

(N bhits = 1) et EeT ≥ seuil(0) (4.1) (N bhits = 1) et ΣPµ1µ2

T ≥ seuil(1) (4.2) Chaque crit`ere de s´election est obtenu `a partir d’op´erateurs arithm´etiques ou logiques. La d´ecision de d´eclenchement finale est obtenue en prenant le « OU » logique entre chacun des canaux de d´eclenchement.

4.4.3 Conditions ´el´ementaires et canaux de d´eclenchement

Les conditions ´el´ementaires et les canaux de d´eclenchement sont deux concepts qui ont ´et´e introduits afin de structurer et d´ecomposer les diff´erents algorithmes propos´es pour l’unit´e de d´ecision de niveau 0.

Une condition ´el´ementaire est le r´esultat d’une op´eration logique ou arithm´etique combin´ee `

a un op´erateur logique (par exemple : EeT ≥ seuil(0)). Le r´esultat d’une condition ´el´ementaire est un bool´een traduit par un simple bit indiquant si la condition ´el´ementaire est satisfaite ou non. Un canal de d´eclenchement est compos´e d’au moins une condition ´el´ementaire et d´efinit un canal de physique `a ´etudier. Ils contribuent directement `a la d´ecision d’accepter ou non l’´ev´enement. Ces canaux de d´eclenchement sont ´elabor´es :

– directement `a partir d’une condition ´el´ementaire ;

– en combinant une condition ´el´ementaire relative `a un candidat et une condition globale caract´erisant l’´ev´enement ;

– en combinant plusieurs conditions ´el´ementaires ;

– en combinant plusieurs conditions ´el´ementaires et une condition globale.

4.4.4 Architecture flexible

Le principe de la flexibilit´e de l’architecture consiste `a mettre `a disposition des ´el´ements logiques pr´e-synth´etis´es qui sont ensuite s´electionn´es et affect´es par un r´eseau logique program-mable. Cette architecture est inspir´ee de l’architecture interne d’un FPGA, mais avec un niveau de granularit´e plus ´elev´e.

1

Duplication des donn´ees

Chaque candidat ou variable globale est dupliqu´e afin de pouvoir ˆetre utilis´e dans des sous-canaux de d´eclenchement diff´erents, avec des seuils ou op´erateurs diff´erents. Le nombre de du-plication est port´e `a 4 pour le moment en raison des limitations impos´ees par les ressources logiques disponibles des FPGA du prototype de l’unit´e de d´ecision. Le nombre de duplication peut bien ´evidemment ˆetre augment´e pour la carte finale en fonction des besoins exprim´es. Les conditions globales sont dupliqu´ees deux fois ce qui est suffisant pour le moment pour la d´efinition des algorithmes de prise de d´ecision. Les nouvelles donn´ees produites peuvent ˆetre ´egalement dupliqu´ees.

La premi`ere solution envisag´ee consistait en une utilisation de matrice d’interconnexion pour la s´election des candidats utilis´es dans l’algorithme. Cependant, cette approche n´ecessitait un trop grand nombre de ressources logiques et de ressources internes d’interconnexion des FPGA. Nous nous sommes donc orient´es vers une pr´e-duplication des candidats et des conditions globales avant l’´elaboration des conditions ´el´ementaires qui apporte une flexibilit´e suffisante pour la d´efinition des algorithmes.

Elaboration des conditions ´el´ementaires

A chaque candidat ou variable globale est associ´e un bloc d’´elaboration de condition ´el´e-mentaire adapt´e. Ce bloc met `a disposition les op´erateurs logiques : >, <, = et 6=. La donn´ee d’entr´ee est alors compar´ee `a une seuil pour ´elaborer le r´esultat de la condition ´el´ementaire. La s´election de l’op´erateur et la configuration du seuil sont r´ealis´ees par l’interface de contrˆole de l’unit´e de d´ecision pr´esent´ee en annexe D.

Structure `a r´eseau logique programmable

Apr`es l’´elaboration des diff´erentes conditions ´el´ementaires, une structure `a r´eseau logique programmable constitue les canaux de d´eclenchement et ´elabore de la d´ecision. Cette structure est compos´ee :

– d’un r´eseau logique « ET » pour la construction des canaux de d´eclenchement ; – d’un r´eseau logique « OU » pour le calcul la d´ecision de l’algorithme.

L’´el´ement de base du r´eseau logique est compos´e de « pterme » permettant de s´electionner quelles sont les entr´ees actives et d’utiliser l’entr´ee normale ou invers´ee. La figure 4.16 pr´esente la cellule de base utilis´ee pour chaque sortie du r´eseau logique. Cette figure pr´esente aussi la propagation des ´etats logiques des entr´ees de donn´ees jusqu’`a la sortie de la cellule de base.

Chaque cellule de base se compose :

– d’une porte logique « ET » `a p entr´ees permettant d’´elaborer le canal de d´eclenchement ; – de p porte logique « OU » permettant de forcer au « 1 » logique l’entr´ee de la porte logique « ET » dans le cas ou la voie de d´eclenchement n’utilise la condition ´el´ementaire d’entr´ee. Dans le cas contraire, c’est le r´esultat de la condition ´el´ementaire qui est prise en compte ; – de p multiplexeur 2 vers 1, pour la s´election de l’entr´ee normal ou invers´ee.

4.4. D´EFINITION DES CANAUX DE D´ECLENCHEMENT ’0’ Donnée [0] Sel[0] En[0] Donnée [p−1] En[p−1] Bit de sortie p entrées Sel[p−1] ’0’ ’1’ ’0’ ’1’ ’0’ ’0’ ’0’ ’1’ ’1’ ’0’ ’0’ ’1’ ’1’ ’0’ ’1’ ’0’

Fig. 4.16 – Cellule de base du r´eseau logique programmable « ET » et propagation des ´etats logiques. Le signal Sel[i] s´electionne l’entr´ee normale ou invers´ee, le signal En[i] force le r´esultat de la porte logique « ou » au ’1’ logique lorsqu’il se trouve `a ’0’.

Architecture flexible pour la d´efinition des d´eclenchements

L’architecture g´en´erale de la construction de l’algorithme de prise de d´ecision est repr´esent´ee figure 4.17. Les ´etages de pipeline introduits pour garantir le fonctionnement de l’algorithme `a 40 MHz ne sont pas repr´esent´es.

Sel. Op. Seuil >,<, =,# Sel. Op. Seuil Taux Taux Conditions globales

Duplication des Duplication des Nouvelles données

Sel. Op.

Seuil

ECS ECS

Réseau logique "ET" Pré traitement Candidats Duplication des >,<, =,# % %

Réseau logique "OU"

ECS ECS

ECS

ECS

Etude de l’efficacité

d’un algorithme Décision de l’algorithme >,<,

=,#

Fig. 4.17 – Principe de l’architecture flexible.

L’architecture propos´ee n’est pas sp´ecifique `a un algorithme particulier. Les voies de d´e-clenchements peuvent ˆetre configur´ees et param´etr´ees par l’interface utilisateur de l’unit´e de d´ecision. Cette architecture permet, si le besoin en est exprim´e, de faire l’´etude d’un algorithme

en parall`ele de celui en cours sans gˆener le comportement de celui-ci. Cette fonctionnalit´e peut apporter un ´el´ement int´eressant d’´etude aux physiciens pour la mise au point de nouveaux algorithmes au niveau 0.