VHDL- liste de sensibilité
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

VHDL- liste de sensibilité



  1. #1
    farouk77

    VHDL- liste de sensibilité


    ------

    Bonjour,

    Quelqu'un pourrait-il me donner la différence (ou me dire où la trouver) entre les 2 codes VHDL ci-dessous:

    process(clock)
    if clock = '1' then...

    process(clock)
    if (clock = '1') and (clock'event) then...
    D'après ce que je sais, la liste de sensibilité (le clock entre parenthèses juste après le process) est la liste des signaux qui déclencheront, après un changement de valeur sur l'un d'entre eux), l'activité du processus.
    Alors pourquoi (dans le deuxième code) rajouter un clock'event?
    Si je suis dans le processus (et en assumant qu'il n'y a qu'un seul signal dans la liste de sensibilité du process), c'est qu'il y a eu un changement de valeur du signal clock, il me suffit juste de regarder cette valeur, pas la peine de tester s'il y a eu un évènement sur le signal.. si?

    source: http://jacques.weber.pagesperso-oran...%C3%A9quentiel

    Merci d'avance pour vos éventuelles réponses

    -----

  2. #2
    Jack
    Modérateur

    Re : VHDL- liste de sensibilité

    sous toutes réserves, car ça devient lointain pour moi.

    Dans le 1er cas, le processus est asynchrone et sera exécuté sur un ETAT de clk

    Dans le 2ème cas, il faudra une modification de clk Et que clk soit à 1 après modification: il s'agit donc de la synthèse d'un FRONT montant.

    A+

  3. #3
    farouk77

    Re : VHDL- liste de sensibilité

    Dans le 1er cas, le processus est asynchrone et sera exécuté sur un ETAT de clk
    Mais alors quelle est l'utilité d'indiquer la liste de sensibilité dans ce cas? Puisqu'on est censé rentrer dans le process que s'il y a un changement d'un des signaux de la liste (soit le clk, donc on aura bien un changement de clk ET clk = 1 => un front montant)..?

  4. #4
    indri

    Re : VHDL- liste de sensibilité

    Sous toutes réserves (et si ca tombe je dis des grosses conneries) également mais j'admet que ta question est pertinante:

    Le signal clock est un std_logic povant prendre '0' ou '1' comme valeur mais aussi 'X' , 'Z' et d'autres...et donc le premier process s'éxecute à chaque changement d'état, pas forcement de 0 à 1...

    Pas du tout sur de ce que je raconte ^^
    Là où va le vent...

  5. A voir en vidéo sur Futura
  6. #5
    farouk77

    Re : VHDL- liste de sensibilité

    Le signal clock est un std_logic povant prendre '0' ou '1' comme valeur mais aussi 'X' , 'Z' et d'autres...et donc le premier process s'éxecute à chaque changement d'état, pas forcement de 0 à 1...
    Je n'y avais pas du tout pensé.. Mais je ne crois pas que ça change quelque chose: dès que je rentre dans le process, je teste si clock est égal à '1', même si le process s'éxecute à chaque changement d'état, il ne fera rien tant que clock ne passera pas à '1'.. nan?

  7. #6
    indri

    Re : VHDL- liste de sensibilité

    passage de 'x' à '1' aussi.
    je sais pas j'imagine...faut attendre l'avis d'un expert. mais bon ca change pas grand chose dans la programmation, juste quelques caractères en, faut pas être avare^^.

    Et puis peut-etre aussi pour que le compilateur comprenne bien que ce soit des process clocké et qu'il synthétise avec des bascules clockés etc. Encore une fois j'essaye de répondre mais sans trop savoir! ^^
    Là où va le vent...

  8. #7
    farouk77

    Re : VHDL- liste de sensibilité

    passage de 'x' à '1' aussi.
    Ta réponse me va, elle est plausible ^^

    mais bon ca change pas grand chose dans la programmation, juste quelques caractères en, faut pas être avare^^.
    non mais j'utilise toujours le deuxième cas, je voulais juste savoir pourquoi l'autre n'est jamais utilisé..

  9. #8
    invite219b5772

    Re : VHDL- liste de sensibilité

    experience perso je te conseil if rising_edge(clk) then

    J'ai eu des probleme lors de la synthétisation de mon code dans le passer ...

    -Nik-

  10. #9
    farouk77

    Re : VHDL- liste de sensibilité

    experience perso je te conseil if rising_edge(clk) then
    Oui, à ce que j'ai vu sur internet, rising_edge permet d'être sur que l'état précédent de clk soit '0' et non 'X', 'Z' etc..

Discussions similaires

  1. Sensibilité de pêche
    Par invite0134c471 dans le forum Allergies
    Réponses: 4
    Dernier message: 30/08/2010, 12h08
  2. sensibilité capteur
    Par invite8cc75be9 dans le forum Physique
    Réponses: 0
    Dernier message: 19/05/2009, 14h46
  3. Point flottant en VHDL et vhdl-200x
    Par invite6eee6b27 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 02/09/2008, 19h47
  4. sensibilité des u.s.
    Par inviteb52f6202 dans le forum Mathématiques du supérieur
    Réponses: 8
    Dernier message: 21/06/2008, 10h27
  5. Sensibilité à la lumière
    Par inviteaf2e78df dans le forum Électronique
    Réponses: 4
    Dernier message: 11/12/2005, 14h30
Découvrez nos comparatifs produits sur l'informatique et les technologies.