Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

FPGA - Temps de propagation porte



  1. #1
    SportsEngine

    Question FPGA - Temps de propagation porte

    Bonjour,

    J'ai une carte de développement (pas de référence précise, provenance ebay) axée autour d'un FPGA cyclone IV d'Altera, et j'aimerais savoir si c'est possible de mapper "facilement" les portes logiques internes pour jouer sur les temps de propagation?

    J'ai une configuration en interne faite à partir de VHDL, la fréquence des signaux reste assez basse (50 MHz au max) mais j'aurais besoin de compenser précisément des retards, avec une résolution proche de 1ns (500ps serait top). Je pourrais éventuellement lui coller un élément Peltier sur le dos pour le réguler à une température assez basse (entre 5°C et 10°C, voire moins) pour diminuer les temps de propagation et surtout le jitter.

    Je pensais le faire avec du câble coax, mais 18cm de câble pour environ 1ns ça va vite devenir encombrant ^^

    Merci

    -----


  2. Publicité
  3. #2
    bobflux

    Re : FPGA - Temps de propagation porte

    Oui, regarde dans la doc de ton logiciel pour les contraintes de placement (pour mettre les portes où tu veux dans le chip et varier la longueur des "fils") et cherche aussi à instancier directement des circuits/portes/LUTs pour créer du délai, sans que l'optimiseur te les dégage (car c'est son boulot !)

    Tu peux googler "fpga variable delay line" ou "programmable delay line" avec la réf de ta fpga.

    Cependant ce ne sera pas précis, si tu veux ajouter un délai à une horloge je te conseillerai plutôt une PLL, pour d'autres signaux y a d'autres options...

  4. #3
    jiherve

    Re : FPGA - Temps de propagation porte

    Bonsoir,
    Vouloir jongler avec des retards de porte c'est généralement très mauvais signe car très rares sont les cas ou cela s'avère réellement nécessaire, en un peu plus d'un demi million de lignes de VHDL je n'ai du le faire qu'une ou deux fois mais avec de la logique turbinant à plus de 250Mhz aux limites du FPGA.
    Donc quel est le but caché ?
    JR
    l'électronique c'est pas du vaudou!

  5. #4
    SportsEngine

    Re : FPGA - Temps de propagation porte

    Le but c'est de faire une ligne à retard pour des signaux non prédictibles dans le temps (mesure physique). Il y a très peu de solution intégrée sur le marché pour des signaux non prédictibles.

    Tous les composants "jitter attenuator" pour l'Ethernet Gigabyte et autre que j'ai testé jusqu'à maintenant ont le même problème : ils sont conçus autour de PLLs et ne fonctionnent donc que pour des horloges. C'est vraiment dommage car il y en a un en particulier qui donnait des résultats satisfaisants pour un coût raisonnable...

  6. #5
    albanxiii

    Re : FPGA - Temps de propagation porte

    Bonjour,

    J'ai mal compris ce que vous désirez faire. Contrôler le retard de signaux en entrée du fpga ? en interne ? en sortie ?
    Not only is it not right, it's not even wrong!

  7. A voir en vidéo sur Futura
  8. #6
    SportsEngine

    Re : FPGA - Temps de propagation porte

    J'ai un signal en entrée qui me sert aussi de déclenchement pour une acquisition, et je veux le retarder de x ns. Le signal retardé me servira entre autre à stopper l'acquisition. Il y aura un retard intrinsèque dû au multiplexeur (curseur) de la ligne programmable, il suffira d'appliquer ce même retard au signal de référence. Ainsi le retard relatif entre le start et le stop correspondront uniquement au retard choisi.

  9. Publicité
  10. #7
    jiherve

    Re : FPGA - Temps de propagation porte

    Bonjour,
    Mauvaise idée car les retards dus aux portes varient avec la température et la tension d'alim et le chip utilisé tout confondu c'est environ 100%.
    Il existe des lignes à retard physique soient en constantes reparties(lignes) soit localisées (cascade de LC). Une solution longtemps employée dans les oscilloscope analogique était celle d'une bête longueur de coax, de mémoire 50ns/m.
    JR
    l'électronique c'est pas du vaudou!

  11. #8
    bobflux

    Re : FPGA - Temps de propagation porte

    > J'ai un signal en entrée qui me sert aussi de déclenchement pour une acquisition, et je veux le retarder de x ns. Le signal retardé me servira entre autre à stopper l'acquisition.

    Je devine que ton acquisition sera une intégration, correct ? Dans ce cas, la précision sur la durée d'intégration est vitale, car la mesure sera proportionnelle à la durée d'intégration !

    Une suite de portes dans une FPGA aura une mauvaise précision, ça va dépendre de la T°, de la tension d'alim, etc...

    Tu pourrais essayer ça : https://datasheets.maximintegrated.com/en/ds/DS1124.pdf

    Mais j'ai l'impression que ce que tu cherches est en fait un monostable très rapide et pas une ligne à retard. Un monostable c'est plus simple, et plus facile à rendre précis.

  12. #9
    jiherve

    Re : FPGA - Temps de propagation porte

    Bonsoir
    On ne peut implémenter un monostable de façon asynchrone et précise dans un FPGA il y aura nécessairement de la logique séquentielle et l'incertitude sera au minimum de l'ordre de la période d'horloge minimale réelle donc >>1ns.
    JR
    l'électronique c'est pas du vaudou!

  13. #10
    bobflux

    Re : FPGA - Temps de propagation porte

    Oui j'aurais dû préciser que le monostable ne s'implémente pas dans la FPGA, je pensais plutôt à un truc genre générateur de rampe + comparateur rapide.

Sur le même thème :

Discussions similaires

  1. Portail Nice une porte sur 2 s'ouvre de temps en temps
    Par HyperCed dans le forum Bricolage et décoration
    Réponses: 4
    Dernier message: 12/11/2017, 13h46
  2. temps de propagation CMOS
    Par madininais dans le forum Électronique
    Réponses: 3
    Dernier message: 21/11/2010, 11h09
  3. Temps de propagation CMOS
    Par daviddit dans le forum Électronique
    Réponses: 3
    Dernier message: 08/06/2009, 11h54
  4. temps de propagation
    Par sweetybiloo dans le forum Physique
    Réponses: 6
    Dernier message: 03/01/2007, 11h54
  5. Temps de propagation
    Par Ludwig dans le forum Physique
    Réponses: 6
    Dernier message: 16/03/2006, 13h42